From 1b68d81d4518e235494aa124577f14fdc4fe0390 Mon Sep 17 00:00:00 2001 From: sapanb Date: Mon, 5 Nov 2007 03:11:59 +0000 Subject: [PATCH] git-svn-id: http://svn.planet-lab.org/svn/fprobe-ulog/trunk@5622 8c455092-636d-4788-adf5-e71def0336e8 --- trunk/AUTHORS | 25 - trunk/ChangeLog | 26 - trunk/Makefile.in | 582 -- trunk/config.log | 486 -- trunk/config.status | 1208 --- trunk/configure | 6612 ----------------- trunk/configure.in | 186 - trunk/mkinstalldirs | 40 - trunk/src/Makefile | 560 -- trunk/src/Makefile.am | 18 - trunk/src/Makefile.in | 560 -- trunk/src/common.h | 32 - trunk/src/fprobe-ulog.8 | 176 - trunk/src/fprobe-ulog.c | 1543 ---- trunk/src/fprobe-ulog.c.old | 1486 ---- trunk/src/fprobe-ulog.h | 131 - trunk/src/fprobe-ulog.h.old | 130 - trunk/src/hash.c | 94 - trunk/src/hash.h | 52 - trunk/src/libipulog/Makefile | 378 - trunk/src/libipulog/Makefile.am | 6 - trunk/src/libipulog/Makefile.in | 378 - .../libipulog/include/libipulog/libipulog.h | 58 - trunk/src/libipulog/libipulog.c | 255 - trunk/src/mem.c | 167 - trunk/src/mem.h | 48 - trunk/src/my_getopt.c | 79 - trunk/src/my_getopt.h | 28 - trunk/src/my_inttypes.h | 51 - trunk/src/my_log.c | 57 - trunk/src/my_log.h | 24 - trunk/src/netflow.c | 145 - trunk/src/netflow.h | 245 - trunk/src/tags | 637 -- trunk/version | 1 - 35 files changed, 16504 deletions(-) delete mode 100644 trunk/AUTHORS delete mode 100644 trunk/ChangeLog delete mode 100644 trunk/Makefile.in delete mode 100644 trunk/config.log delete mode 100755 trunk/config.status delete mode 100755 trunk/configure delete mode 100644 trunk/configure.in delete mode 100755 trunk/mkinstalldirs delete mode 100644 trunk/src/Makefile delete mode 100644 trunk/src/Makefile.am delete mode 100644 trunk/src/Makefile.in delete mode 100644 trunk/src/common.h delete mode 100644 trunk/src/fprobe-ulog.8 delete mode 100644 trunk/src/fprobe-ulog.c delete mode 100644 trunk/src/fprobe-ulog.c.old delete mode 100644 trunk/src/fprobe-ulog.h delete mode 100644 trunk/src/fprobe-ulog.h.old delete mode 100644 trunk/src/hash.c delete mode 100644 trunk/src/hash.h delete mode 100644 trunk/src/libipulog/Makefile delete mode 100644 trunk/src/libipulog/Makefile.am delete mode 100644 trunk/src/libipulog/Makefile.in delete mode 100644 trunk/src/libipulog/include/libipulog/libipulog.h delete mode 100644 trunk/src/libipulog/libipulog.c delete mode 100644 trunk/src/mem.c delete mode 100644 trunk/src/mem.h delete mode 100644 trunk/src/my_getopt.c delete mode 100644 trunk/src/my_getopt.h delete mode 100644 trunk/src/my_inttypes.h delete mode 100644 trunk/src/my_log.c delete mode 100644 trunk/src/my_log.h delete mode 100644 trunk/src/netflow.c delete mode 100644 trunk/src/netflow.h delete mode 100644 trunk/src/tags delete mode 100644 trunk/version diff --git a/trunk/AUTHORS b/trunk/AUTHORS deleted file mode 100644 index 02b1fe1..0000000 --- a/trunk/AUTHORS +++ /dev/null @@ -1,25 +0,0 @@ -Slava Astashonok - -Thanks: -- Alex Antropoff : - note about RedHad's pcap.h location - -- Daniel Senie : - contrib/redhat-init.d script - -- Dmitry Vagin : - more universal SNMP ifIndexes workaround (tricky filters) - -- Thierry MARTIN - NetFlow v7 fix - -- Viktor Fomichev - Cisco's ICMP type/code storing method - -- Alexey A. Stroganov - notes about trailer bug and flow's start time corruption - -- Abraham van der Merwe - using if_nametoindex(), using netfilter mark value as ToS flag - -Lot of thanks to other folks for support and [not so ;-)] smart questions. diff --git a/trunk/ChangeLog b/trunk/ChangeLog deleted file mode 100644 index a5e3c2d..0000000 --- a/trunk/ChangeLog +++ /dev/null @@ -1,26 +0,0 @@ -2005-01-30 Slava Astashonok - - * Release 1.1: bugfixes, features enhancement. - - * Changes: - - was fixed vulnerability to a DoS attack, as described in "Denial - of Service via Algorithmic Complexity Attacks" by Scott A - Crosby and Dan S Wallach: http://www.cs.rice.edu/~scrosby/hash, - by strengthening the crc16 hash function implementation; - note that xor8 and xor16 hashes remain vulnerable - - default hash was changed to crc16 - - -B and -M options were added - - if_nametoindex() used as default action to find SNMP-index - -2004-09-21 Slava Astashonok - - * Release 1.0.6: minor bugfixes. - - * Changes: - - security fix for "change user" feature - - typo in CAPTURE_SIZE definition was fixed - - debian/* files were removed - -2004-08-14 Slava Astashonok - - * Release 1.0.5: initial ULOG fork diff --git a/trunk/Makefile.in b/trunk/Makefile.in deleted file mode 100644 index fcc345c..0000000 --- a/trunk/Makefile.in +++ /dev/null @@ -1,582 +0,0 @@ -# Makefile.in generated by automake 1.9.4 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = . -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in $(srcdir)/config.h.in \ - $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ - TODO config.guess config.sub install-sh missing mkinstalldirs -subdir = . -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno configure.status.lineno -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = -depcomp = -am__depfiles_maybe = -SOURCES = -DIST_SOURCES = -RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ - html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -distdir = $(PACKAGE)-$(VERSION) -top_distdir = $(distdir) -am__remove_distdir = \ - { test ! -d $(distdir) \ - || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -fr $(distdir); }; } -DIST_ARCHIVES = $(distdir).tar.gz -GZIP_ENV = --best -distuninstallcheck_listfiles = find . -type f -print -distcleancheck_listfiles = find . -type f -print -ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DATE = @DATE@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LTLIBOBJS = @LTLIBOBJS@ -MAKEINFO = @MAKEINFO@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -EXTRA_DIST = autogen.sh fprobe-ulog.spec version \ - contrib/tg.sh contrib/ipt_ULOG.patch - -SUBDIRS = src -all: config.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive - -.SUFFIXES: -am--refresh: - @: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --gnu --ignore-deps'; \ - cd $(srcdir) && $(AUTOMAKE) --gnu --ignore-deps \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu --ignore-deps Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu --ignore-deps Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - echo ' $(SHELL) ./config.status'; \ - $(SHELL) ./config.status;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(srcdir) && $(AUTOCONF) -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) - -config.h: stamp-h1 - @if test ! -f $@; then \ - rm -f stamp-h1; \ - $(MAKE) stamp-h1; \ - else :; fi - -stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status - @rm -f stamp-h1 - cd $(top_builddir) && $(SHELL) ./config.status config.h -$(srcdir)/config.h.in: $(am__configure_deps) - cd $(top_srcdir) && $(AUTOHEADER) - rm -f stamp-h1 - touch $@ - -distclean-hdr: - -rm -f config.h stamp-h1 -uninstall-info-am: - -# This directory's subdirectories are mostly independent; you can cd -# into them and run `make' without going through this Makefile. -# To change the values of `make' variables: instead of editing Makefiles, -# (1) if the variable is set in `config.status', edit `config.status' -# (which will cause the Makefiles to be regenerated when you run `make'); -# (2) otherwise, pass the desired values on the `make' command line. -$(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - rev=''; for subdir in $$list; do \ - if test "$$subdir" = "."; then :; else \ - rev="$$subdir $$rev"; \ - fi; \ - done; \ - rev="$$rev ."; \ - target=`echo $@ | sed s/-recursive//`; \ - for subdir in $$rev; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done && test -z "$$fail" -tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ - done -ctags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ - done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - $(am__remove_distdir) - mkdir $(distdir) - $(mkdir_p) $(distdir)/contrib - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ - || exit 1; \ - distdir=`$(am__cd) $(distdir) && pwd`; \ - top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ - distdir) \ - || exit 1; \ - fi; \ - done - -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ - ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ - || chmod -R a+r $(distdir) -dist-gzip: distdir - tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(am__remove_distdir) - -dist-bzip2: distdir - tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 - $(am__remove_distdir) - -dist-tarZ: distdir - tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z - $(am__remove_distdir) - -dist-shar: distdir - shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz - $(am__remove_distdir) - -dist-zip: distdir - -rm -f $(distdir).zip - zip -rq $(distdir).zip $(distdir) - $(am__remove_distdir) - -dist dist-all: distdir - tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(am__remove_distdir) - -# This target untars the dist file and tries a VPATH configuration. Then -# it guarantees that the distribution is self-contained by making another -# tarfile. -distcheck: dist - case '$(DIST_ARCHIVES)' in \ - *.tar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ - *.tar.bz2*) \ - bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ - *.tar.Z*) \ - uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ - *.shar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ - *.zip*) \ - unzip $(distdir).zip ;;\ - esac - chmod -R a-w $(distdir); chmod a+w $(distdir) - mkdir $(distdir)/_build - mkdir $(distdir)/_inst - chmod a-w $(distdir) - dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ - && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ - && cd $(distdir)/_build \ - && ../configure --srcdir=.. --prefix="$$dc_install_base" \ - $(DISTCHECK_CONFIGURE_FLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) \ - && $(MAKE) $(AM_MAKEFLAGS) dvi \ - && $(MAKE) $(AM_MAKEFLAGS) check \ - && $(MAKE) $(AM_MAKEFLAGS) install \ - && $(MAKE) $(AM_MAKEFLAGS) installcheck \ - && $(MAKE) $(AM_MAKEFLAGS) uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ - distuninstallcheck \ - && chmod -R a-w "$$dc_install_base" \ - && ({ \ - (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ - && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ - distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ - } || { rm -rf "$$dc_destdir"; exit 1; }) \ - && rm -rf "$$dc_destdir" \ - && $(MAKE) $(AM_MAKEFLAGS) dist \ - && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck - $(am__remove_distdir) - @(echo "$(distdir) archives ready for distribution: "; \ - list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ - sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' -distuninstallcheck: - @cd $(distuninstallcheck_dir) \ - && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ - || { echo "ERROR: files left after uninstall:" ; \ - if test -n "$(DESTDIR)"; then \ - echo " (check DESTDIR support)"; \ - fi ; \ - $(distuninstallcheck_listfiles) ; \ - exit 1; } >&2 -distcleancheck: distclean - @if test '$(srcdir)' = . ; then \ - echo "ERROR: distcleancheck can only run from a VPATH build" ; \ - exit 1 ; \ - fi - @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ - || { echo "ERROR: files left in build directory after distclean:" ; \ - $(distcleancheck_listfiles) ; \ - exit 1; } >&2 -check-am: all-am -check: check-recursive -all-am: Makefile config.h -installdirs: installdirs-recursive -installdirs-am: -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-generic mostlyclean-am - -distclean: distclean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-hdr distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -info: info-recursive - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-recursive - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f $(am__CONFIG_DISTCLEAN_FILES) - -rm -rf $(top_srcdir)/autom4te.cache - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-generic - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-info-am - -uninstall-info: uninstall-info-recursive - -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ - check-am clean clean-generic clean-recursive ctags \ - ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ - dist-tarZ dist-zip distcheck distclean distclean-generic \ - distclean-hdr distclean-recursive distclean-tags \ - distcleancheck distdir distuninstallcheck dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-exec install-exec-am install-info \ - install-info-am install-man install-strip installcheck \ - installcheck-am installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic maintainer-clean-recursive \ - mostlyclean mostlyclean-generic mostlyclean-recursive pdf \ - pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ - uninstall-info-am - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/trunk/config.log b/trunk/config.log deleted file mode 100644 index a98ad1a..0000000 --- a/trunk/config.log +++ /dev/null @@ -1,486 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by configure, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ ./configure - -## --------- ## -## Platform. ## -## --------- ## - -hostname = joyce -uname -m = i686 -uname -r = 2.6.19-skas3-v9-pre9 -uname -s = Linux -uname -v = #9 SMP Fri Jan 12 09:39:05 EST 2007 - -/usr/bin/uname -p = Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz -/bin/uname -X = unknown - -/bin/arch = i686 -/usr/bin/arch -k = unknown -/usr/convex/getsysinfo = unknown -hostinfo = unknown -/bin/machine = unknown -/usr/bin/oslevel = unknown -/bin/universe = unknown - -PATH: /bin -PATH: /sbin -PATH: /usr/bin -PATH: /usr/sbin -PATH: /usr/local/bin -PATH: /usr/local/sbin -PATH: /opt/bin -PATH: /usr/i686-pc-linux-gnu/gcc-bin/4.1.1 - - -## ----------- ## -## Core tests. ## -## ----------- ## - -configure:1328: checking build system type -configure:1346: result: i686-pc-linux-gnu -configure:1354: checking host system type -configure:1368: result: i686-pc-linux-gnu -configure:1376: checking target system type -configure:1390: result: i686-pc-linux-gnu -configure:1418: checking for a BSD-compatible install -configure:1473: result: /bin/install -c -configure:1484: checking whether build environment is sane -configure:1527: result: yes -configure:1592: checking for gawk -configure:1608: found /bin/gawk -configure:1618: result: gawk -configure:1628: checking whether make sets $(MAKE) -configure:1648: result: yes -configure:1865: checking for gcc -configure:1881: found /usr/bin/gcc -configure:1891: result: gcc -configure:2135: checking for C compiler version -configure:2138: gcc --version &5 -gcc (GCC) 4.1.1 (Gentoo 4.1.1) -Copyright (C) 2006 Free Software Foundation, Inc. -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -configure:2141: $? = 0 -configure:2143: gcc -v &5 -Using built-in specs. -Target: i686-pc-linux-gnu -Configured with: /var/tmp/portage/gcc-4.1.1/work/gcc-4.1.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/4.1.1 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/4.1.1/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/include/g++-v4 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-multilib --disable-libmudflap --disable-libssp --disable-libgcj --enable-languages=c,c++,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu -Thread model: posix -gcc version 4.1.1 (Gentoo 4.1.1) -configure:2146: $? = 0 -configure:2148: gcc -V &5 -gcc: '-V' option must have argument -configure:2151: $? = 1 -configure:2174: checking for C compiler default output file name -configure:2177: gcc conftest.c >&5 -configure:2180: $? = 0 -configure:2226: result: a.out -configure:2231: checking whether the C compiler works -configure:2237: ./a.out -configure:2240: $? = 0 -configure:2257: result: yes -configure:2264: checking whether we are cross compiling -configure:2266: result: no -configure:2269: checking for suffix of executables -configure:2271: gcc -o conftest conftest.c >&5 -configure:2274: $? = 0 -configure:2299: result: -configure:2305: checking for suffix of object files -configure:2326: gcc -c conftest.c >&5 -configure:2329: $? = 0 -configure:2351: result: o -configure:2355: checking whether we are using the GNU C compiler -configure:2379: gcc -c conftest.c >&5 -configure:2385: $? = 0 -configure:2388: test -z || test ! -s conftest.err -configure:2391: $? = 0 -configure:2394: test -s conftest.o -configure:2397: $? = 0 -configure:2410: result: yes -configure:2416: checking whether gcc accepts -g -configure:2437: gcc -c -g conftest.c >&5 -configure:2443: $? = 0 -configure:2446: test -z || test ! -s conftest.err -configure:2449: $? = 0 -configure:2452: test -s conftest.o -configure:2455: $? = 0 -configure:2466: result: yes -configure:2483: checking for gcc option to accept ANSI C -configure:2553: gcc -c -g -O2 conftest.c >&5 -configure:2559: $? = 0 -configure:2562: test -z || test ! -s conftest.err -configure:2565: $? = 0 -configure:2568: test -s conftest.o -configure:2571: $? = 0 -configure:2589: result: none needed -configure:2607: gcc -c -g -O2 conftest.c >&5 -conftest.c:2: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'me' -configure:2613: $? = 1 -configure: failed program was: -| #ifndef __cplusplus -| choke me -| #endif -configure:2754: checking for style of include used by make -configure:2782: result: GNU -configure:2810: checking dependency style of gcc -configure:2900: result: none -configure:2930: checking for a BSD-compatible install -configure:2985: result: /bin/install -c -configure:3037: checking for ranlib -configure:3053: found /usr/bin/ranlib -configure:3064: result: ranlib -configure:3079: checking for pthread_create in -lpthread -configure:3109: gcc -o conftest -g -O2 conftest.c -lpthread >&5 -configure:3115: $? = 0 -configure:3118: test -z || test ! -s conftest.err -configure:3121: $? = 0 -configure:3124: test -s conftest -configure:3127: $? = 0 -configure:3140: result: yes -configure:3162: checking how to run the C preprocessor -configure:3197: gcc -E conftest.c -configure:3203: $? = 0 -configure:3235: gcc -E conftest.c -conftest.c:12:28: error: ac_nonexistent.h: No such file or directory -configure:3241: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "fprobe-ulog" -| #define VERSION "1.1" -| #define HAVE_LIBPTHREAD 1 -| /* end confdefs.h. */ -| #include -configure:3280: result: gcc -E -configure:3304: gcc -E conftest.c -configure:3310: $? = 0 -configure:3342: gcc -E conftest.c -conftest.c:12:28: error: ac_nonexistent.h: No such file or directory -configure:3348: $? = 1 -configure: failed program was: -| /* confdefs.h. */ -| -| #define PACKAGE_NAME "" -| #define PACKAGE_TARNAME "" -| #define PACKAGE_VERSION "" -| #define PACKAGE_STRING "" -| #define PACKAGE_BUGREPORT "" -| #define PACKAGE "fprobe-ulog" -| #define VERSION "1.1" -| #define HAVE_LIBPTHREAD 1 -| /* end confdefs.h. */ -| #include -configure:3392: checking for egrep -configure:3402: result: grep -E -configure:3407: checking for ANSI C header files -configure:3432: gcc -c -g -O2 conftest.c >&5 -configure:3438: $? = 0 -configure:3441: test -z || test ! -s conftest.err -configure:3444: $? = 0 -configure:3447: test -s conftest.o -configure:3450: $? = 0 -configure:3539: gcc -o conftest -g -O2 conftest.c -lpthread >&5 -conftest.c: In function 'main': -conftest.c:29: warning: incompatible implicit declaration of built-in function 'exit' -configure:3542: $? = 0 -configure:3544: ./conftest -configure:3547: $? = 0 -configure:3562: result: yes -configure:3586: checking for sys/types.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for sys/stat.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for stdlib.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for string.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for memory.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for strings.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for inttypes.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for stdint.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3586: checking for unistd.h -configure:3602: gcc -c -g -O2 conftest.c >&5 -configure:3608: $? = 0 -configure:3611: test -z || test ! -s conftest.err -configure:3614: $? = 0 -configure:3617: test -s conftest.o -configure:3620: $? = 0 -configure:3631: result: yes -configure:3644: checking for inttypes.h -configure:3649: result: yes -configure:5018: checking which memory bulk indexing mode to use -configure:5046: result: "ptr" -configure:5055: checking which hash type and size to use -configure:5098: result: "crc16" -configure:5102: checking whether to enable uptime trick -configure:5113: result: yes -configure:5128: checking whether to enable icmp trick -configure:5139: result: yes -configure:5163: checking whether to enable debugging -configure:5174: result: no -configure:5200: checking whether to enable runtime messages -configure:5220: result: no -configure:5226: checking directory to store pidfiles -configure:5241: result: "/var/run" -configure:5310: creating ./config.status - -## ---------------------- ## -## Running config.status. ## -## ---------------------- ## - -This file was extended by config.status, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = - CONFIG_HEADERS = - CONFIG_LINKS = - CONFIG_COMMANDS = - $ ./config.status - -on joyce - -config.status:745: creating Makefile -config.status:745: creating src/Makefile -config.status:745: creating src/libipulog/Makefile -config.status:811: creating config.h -config.status:1117: executing depfiles commands - -## ---------------- ## -## Cache variables. ## -## ---------------- ## - -ac_cv_build=i686-pc-linux-gnu -ac_cv_build_alias=i686-pc-linux-gnu -ac_cv_c_compiler_gnu=yes -ac_cv_env_CC_set= -ac_cv_env_CC_value= -ac_cv_env_CFLAGS_set= -ac_cv_env_CFLAGS_value= -ac_cv_env_CPPFLAGS_set= -ac_cv_env_CPPFLAGS_value= -ac_cv_env_CPP_set= -ac_cv_env_CPP_value= -ac_cv_env_LDFLAGS_set= -ac_cv_env_LDFLAGS_value= -ac_cv_env_build_alias_set= -ac_cv_env_build_alias_value= -ac_cv_env_host_alias_set= -ac_cv_env_host_alias_value= -ac_cv_env_target_alias_set= -ac_cv_env_target_alias_value= -ac_cv_exeext= -ac_cv_header_inttypes_h=yes -ac_cv_header_memory_h=yes -ac_cv_header_stdc=yes -ac_cv_header_stdint_h=yes -ac_cv_header_stdlib_h=yes -ac_cv_header_string_h=yes -ac_cv_header_strings_h=yes -ac_cv_header_sys_stat_h=yes -ac_cv_header_sys_types_h=yes -ac_cv_header_unistd_h=yes -ac_cv_host=i686-pc-linux-gnu -ac_cv_host_alias=i686-pc-linux-gnu -ac_cv_lib_pthread_pthread_create=yes -ac_cv_objext=o -ac_cv_path_install='/bin/install -c' -ac_cv_prog_AWK=gawk -ac_cv_prog_CPP='gcc -E' -ac_cv_prog_ac_ct_CC=gcc -ac_cv_prog_ac_ct_RANLIB=ranlib -ac_cv_prog_cc_g=yes -ac_cv_prog_cc_stdc= -ac_cv_prog_egrep='grep -E' -ac_cv_prog_make_make_set=yes -ac_cv_target=i686-pc-linux-gnu -ac_cv_target_alias=i686-pc-linux-gnu -am_cv_CC_dependencies_compiler_type=none - -## ----------------- ## -## Output variables. ## -## ----------------- ## - -ACLOCAL='${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run aclocal-1.9' -AMDEPBACKSLASH='\' -AMDEP_FALSE='#' -AMDEP_TRUE='' -AMTAR='${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run tar' -AUTOCONF='${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoconf' -AUTOHEADER='${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoheader' -AUTOMAKE='${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run automake-1.9' -AWK='gawk' -CC='gcc' -CCDEPMODE='depmode=none' -CFLAGS='-g -O2 -D_BSD_SOURCE -D_REENTRANT -DWALL -W -Wall' -CPP='gcc -E' -CPPFLAGS='' -CYGPATH_W='echo' -DATE='2007-10-26' -DEFS='-DHAVE_CONFIG_H' -DEPDIR='.deps' -ECHO_C='' -ECHO_N='-n' -ECHO_T='' -EGREP='grep -E' -EXEEXT='' -INSTALL_DATA='${INSTALL} -m 644' -INSTALL_PROGRAM='${INSTALL}' -INSTALL_SCRIPT='${INSTALL}' -INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s' -LDFLAGS='' -LIBOBJS='' -LIBS='-lpthread ' -LTLIBOBJS='' -MAKEINFO='${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run makeinfo' -OBJEXT='o' -PACKAGE='fprobe-ulog' -PACKAGE_BUGREPORT='' -PACKAGE_NAME='' -PACKAGE_STRING='' -PACKAGE_TARNAME='' -PACKAGE_VERSION='' -PATH_SEPARATOR=':' -RANLIB='ranlib' -SET_MAKE='' -SHELL='/bin/sh' -STRIP='' -VERSION='1.1' -ac_ct_CC='gcc' -ac_ct_RANLIB='ranlib' -ac_ct_STRIP='' -am__fastdepCC_FALSE='' -am__fastdepCC_TRUE='#' -am__include='include' -am__leading_dot='.' -am__quote='' -am__tar='${AMTAR} chof - "$$tardir"' -am__untar='${AMTAR} xf -' -bindir='${exec_prefix}/bin' -build='i686-pc-linux-gnu' -build_alias='' -build_cpu='i686' -build_os='linux-gnu' -build_vendor='pc' -datadir='${prefix}/share' -exec_prefix='${prefix}' -host='i686-pc-linux-gnu' -host_alias='' -host_cpu='i686' -host_os='linux-gnu' -host_vendor='pc' -includedir='${prefix}/include' -infodir='${prefix}/info' -install_sh='/home/sapan/fprobe-ulog-1.1/install-sh' -libdir='${exec_prefix}/lib' -libexecdir='${exec_prefix}/libexec' -localstatedir='${prefix}/var' -mandir='${prefix}/man' -mkdir_p='mkdir -p --' -oldincludedir='/usr/include' -prefix='/usr/local' -program_transform_name='s,x,x,' -sbindir='${exec_prefix}/sbin' -sharedstatedir='${prefix}/com' -sysconfdir='${prefix}/etc' -target='i686-pc-linux-gnu' -target_alias='' -target_cpu='i686' -target_os='linux-gnu' -target_vendor='pc' - -## ----------- ## -## confdefs.h. ## -## ----------- ## - -#define DEBUG (0) -#define HASH_BITS 16 -#define HASH_TYPE_CRC -#define HAVE_INTTYPES_H -#define HAVE_INTTYPES_H 1 -#define HAVE_LIBPTHREAD 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STDINT_H 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_STRING_H 1 -#define HAVE_SYS_STAT_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_UNISTD_H 1 -#define ICMP_TRICK -#define MEM_BITS 0 -#define OS_LINUX -#define PACKAGE "fprobe-ulog" -#define PACKAGE_BUGREPORT "" -#define PACKAGE_NAME "" -#define PACKAGE_STRING "" -#define PACKAGE_TARNAME "" -#define PACKAGE_VERSION "" -#define PID_DIR "/var/run" -#define STDC_HEADERS 1 -#define UPTIME_TRICK -#define VERSION "1.1" - -configure: exit 0 diff --git a/trunk/config.status b/trunk/config.status deleted file mode 100755 index c463a7c..0000000 --- a/trunk/config.status +++ /dev/null @@ -1,1208 +0,0 @@ -#! /bin/sh -# Generated by configure. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=${CONFIG_SHELL-/bin/sh} -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -config_files=" Makefile src/Makefile src/libipulog/Makefile" -config_headers=" config.h" -config_commands=" depfiles" - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." -ac_cs_version="\ -config.status -configured by ./configure, generated by GNU Autoconf 2.59, - with options \"\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=. -INSTALL="/bin/install -c" -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -if $ac_cs_recheck; then - echo "running /bin/sh ./configure " $ac_configure_extra_args " --no-create --no-recursion" >&6 - exec /bin/sh ./configure $ac_configure_extra_args --no-create --no-recursion -fi - -# -# INIT-COMMANDS section. -# - -AMDEP_TRUE="" ac_aux_dir="." - -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "src/libipulog/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libipulog/Makefile" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t$/@;t t/; /@;t t$/s/[\\&,]/\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t$/,;t t/' >$tmp/subs.sed <<\CEOF -s,@SHELL@,/bin/sh,;t t -s,@PATH_SEPARATOR@,:,;t t -s,@PACKAGE_NAME@,,;t t -s,@PACKAGE_TARNAME@,,;t t -s,@PACKAGE_VERSION@,,;t t -s,@PACKAGE_STRING@,,;t t -s,@PACKAGE_BUGREPORT@,,;t t -s,@exec_prefix@,${prefix},;t t -s,@prefix@,/usr/local,;t t -s,@program_transform_name@,s,x,x,,;t t -s,@bindir@,${exec_prefix}/bin,;t t -s,@sbindir@,${exec_prefix}/sbin,;t t -s,@libexecdir@,${exec_prefix}/libexec,;t t -s,@datadir@,${prefix}/share,;t t -s,@sysconfdir@,${prefix}/etc,;t t -s,@sharedstatedir@,${prefix}/com,;t t -s,@localstatedir@,${prefix}/var,;t t -s,@libdir@,${exec_prefix}/lib,;t t -s,@includedir@,${prefix}/include,;t t -s,@oldincludedir@,/usr/include,;t t -s,@infodir@,${prefix}/info,;t t -s,@mandir@,${prefix}/man,;t t -s,@build_alias@,,;t t -s,@host_alias@,,;t t -s,@target_alias@,,;t t -s,@DEFS@,-DHAVE_CONFIG_H,;t t -s,@ECHO_C@,,;t t -s,@ECHO_N@,-n,;t t -s,@ECHO_T@,,;t t -s,@LIBS@,-lpthread ,;t t -s,@build@,i686-pc-linux-gnu,;t t -s,@build_cpu@,i686,;t t -s,@build_vendor@,pc,;t t -s,@build_os@,linux-gnu,;t t -s,@host@,i686-pc-linux-gnu,;t t -s,@host_cpu@,i686,;t t -s,@host_vendor@,pc,;t t -s,@host_os@,linux-gnu,;t t -s,@target@,i686-pc-linux-gnu,;t t -s,@target_cpu@,i686,;t t -s,@target_vendor@,pc,;t t -s,@target_os@,linux-gnu,;t t -s,@INSTALL_PROGRAM@,${INSTALL},;t t -s,@INSTALL_SCRIPT@,${INSTALL},;t t -s,@INSTALL_DATA@,${INSTALL} -m 644,;t t -s,@CYGPATH_W@,echo,;t t -s,@PACKAGE@,fprobe-ulog,;t t -s,@VERSION@,1.1,;t t -s,@ACLOCAL@,${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run aclocal-1.9,;t t -s,@AUTOCONF@,${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoconf,;t t -s,@AUTOMAKE@,${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run automake-1.9,;t t -s,@AUTOHEADER@,${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoheader,;t t -s,@MAKEINFO@,${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run makeinfo,;t t -s,@install_sh@,/home/sapan/fprobe-ulog-1.1/install-sh,;t t -s,@STRIP@,,;t t -s,@ac_ct_STRIP@,,;t t -s,@INSTALL_STRIP_PROGRAM@,${SHELL} $(install_sh) -c -s,;t t -s,@mkdir_p@,mkdir -p --,;t t -s,@AWK@,gawk,;t t -s,@SET_MAKE@,,;t t -s,@am__leading_dot@,.,;t t -s,@AMTAR@,${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run tar,;t t -s,@am__tar@,${AMTAR} chof - "$$tardir",;t t -s,@am__untar@,${AMTAR} xf -,;t t -s,@CC@,gcc,;t t -s,@CFLAGS@,-g -O2 -D_BSD_SOURCE -D_REENTRANT -DWALL -W -Wall,;t t -s,@LDFLAGS@,,;t t -s,@CPPFLAGS@,,;t t -s,@ac_ct_CC@,gcc,;t t -s,@EXEEXT@,,;t t -s,@OBJEXT@,o,;t t -s,@DEPDIR@,.deps,;t t -s,@am__include@,include,;t t -s,@am__quote@,,;t t -s,@AMDEP_TRUE@,,;t t -s,@AMDEP_FALSE@,#,;t t -s,@AMDEPBACKSLASH@,\,;t t -s,@CCDEPMODE@,depmode=none,;t t -s,@am__fastdepCC_TRUE@,#,;t t -s,@am__fastdepCC_FALSE@,,;t t -s,@RANLIB@,ranlib,;t t -s,@ac_ct_RANLIB@,ranlib,;t t -s,@CPP@,gcc -E,;t t -s,@EGREP@,grep -E,;t t -s,@DATE@,2007-10-26,;t t -s,@LIBOBJS@,,;t t -s,@LTLIBOBJS@,,;t t -CEOF - - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - sed "/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -} - -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - - # Handle all the #define templates only if necessary. - if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then - # If there are no defines, we may have an empty if/fi - : - cat >$tmp/defines.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - fi # grep - - # Handle all the #undef templates - cat >$tmp/undefs.sed <$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - esac -done - -{ (exit 0); exit 0; } diff --git a/trunk/configure b/trunk/configure deleted file mode 100755 index de843df..0000000 --- a/trunk/configure +++ /dev/null @@ -1,6612 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. -# -# Copyright (C) 2003 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -exec 6>&1 - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_config_libobj_dir=. -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - -# Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= - -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_SYS_STAT_H -# include -#endif -#if STDC_HEADERS -# include -# include -#else -# if HAVE_STDLIB_H -# include -# endif -#endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#endif -#if HAVE_STRINGS_H -# include -#endif -#if HAVE_INTTYPES_H -# include -#else -# if HAVE_STDINT_H -# include -# endif -#endif -#if HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB CPP EGREP DATE LIBOBJS LTLIBOBJS' -ac_subst_files='' - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -ac_prev= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_option in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi -fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -_ACEOF - - cat <<_ACEOF -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] -_ACEOF - - cat <<\_ACEOF - -Program names: - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM run sed PROGRAM on installed program names - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] - --target=TARGET configure for building compilers for TARGET [HOST] -_ACEOF -fi - -if test -n "$ac_init_help"; then - - cat <<\_ACEOF - -Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --disable-dependency-tracking speeds up one-time build - --enable-dependency-tracking do not reject slow dependency extractors - --enable-uptime_trick enable uptime trick default=yes - --enable-icmp_trick enable icmp trick: yes|cisco|no default=yes - --enable-debug enable debugging default=no - --enable-messages enable runtime messages default=no - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-membulk=MODE indexing mode: index8|index16|ptr default=ptr - --with-hash=TYPE hash type: crc16|xor16|xor8 default=crc16 - --with-piddir=DIR pidfiles location default=/var/run - -Some influential environment variables: - CC C compiler command - CFLAGS C compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory - CPP C preprocessor - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -_ACEOF -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - ac_popdir=`pwd` - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd "$ac_popdir" - done -fi - -test -n "$ac_init_help" && exit 0 -if $ac_init_version; then - cat <<\_ACEOF - -Copyright (C) 2003 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit 0 -fi -exec 5>config.log -cat >&5 <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - $ $0 $@ - -_ACEOF -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_sep= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -{ - (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) - sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; - *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - sed "/^$/d" confdefs.h | sort - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status - ' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - - - - - - - - - - - - - -ac_aux_dir= -for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/install-sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f $ac_dir/install.sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f $ac_dir/shtool; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} - { (exit 1); exit 1; }; } -fi -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. - -# Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} - { (exit 1); exit 1; }; } - -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 -build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 -host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking target system type" >&5 -echo $ECHO_N "checking target system type... $ECHO_C" >&6 -if test "${ac_cv_target+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_target_alias=$target_alias -test "x$ac_cv_target_alias" = "x" && - ac_cv_target_alias=$ac_cv_host_alias -ac_cv_target=`$ac_config_sub $ac_cv_target_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_target_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -echo "$as_me:$LINENO: result: $ac_cv_target" >&5 -echo "${ECHO_T}$ac_cv_target" >&6 -target=$ac_cv_target -target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -target_vendor=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -target_os=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -test -n "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- -am__api_version="1.9" -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - done - done - ;; -esac -done - - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the path is relative. - INSTALL=$ac_install_sh - fi -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -echo "$as_me:$LINENO: checking whether build environment is sane" >&5 -echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 -# Just in case -sleep 1 -echo timestamp > conftest.file -# Do `set' in a subshell so we don't clobber the current shell's -# arguments. Must try -L first in case configure is actually a -# symlink; some systems play weird games with the mod time of symlinks -# (eg FreeBSD returns the mod time of the symlink's containing -# directory). -if ( - set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` - if test "$*" = "X"; then - # -L didn't work. - set X `ls -t $srcdir/configure conftest.file` - fi - rm -f conftest.file - if test "$*" != "X $srcdir/configure conftest.file" \ - && test "$*" != "X conftest.file $srcdir/configure"; then - - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" >&5 -echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" >&2;} - { (exit 1); exit 1; }; } - fi - - test "$2" = conftest.file - ) -then - # Ok. - : -else - { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! -Check your system clock" >&5 -echo "$as_me: error: newly created file is older than distributed files! -Check your system clock" >&2;} - { (exit 1); exit 1; }; } -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -test "$program_prefix" != NONE && - program_transform_name="s,^,$program_prefix,;$program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s,\$,$program_suffix,;$program_transform_name" -# Double any \ or $. echo might interpret backslashes. -# By default was `s,x,x', remove it if useless. -cat <<\_ACEOF >conftest.sed -s/[\\$]/&&/g;s/;s,x,x,$// -_ACEOF -program_transform_name=`echo $program_transform_name | sed -f conftest.sed` -rm conftest.sed - -# expand $ac_aux_dir to an absolute path -am_aux_dir=`cd $ac_aux_dir && pwd` - -test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" -# Use eval to expand $SHELL -if eval "$MISSING --run true"; then - am_missing_run="$MISSING --run " -else - am_missing_run= - { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 -echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} -fi - -if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # We used to keeping the `.' as first argument, in order to - # allow $(mkdir_p) to be used without argument. As in - # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. However this is wrong - # for two reasons: - # 1. if the package is installed by a user who cannot write `.' - # make install will fail, - # 2. the above comment should most certainly read - # $(mkdir_p) $(DESTDIR)$(somedir) - # so it does not work when $(somedir) is undefined and - # $(DESTDIR) is not. - # To support the latter case, we have to write - # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), - # so the `.' trick is pointless. - mkdir_p='mkdir -p --' -else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - for d in ./-p ./--version; - do - test -d $d && rmdir $d - done - # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. - if test -f "$ac_aux_dir/mkinstalldirs"; then - mkdir_p='$(mkinstalldirs)' - else - mkdir_p='$(install_sh) -d' - fi -fi - -for ac_prog in gawk mawk nawk awk -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_AWK+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$AWK"; then - ac_cv_prog_AWK="$AWK" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_AWK="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -AWK=$ac_cv_prog_AWK -if test -n "$AWK"; then - echo "$as_me:$LINENO: result: $AWK" >&5 -echo "${ECHO_T}$AWK" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$AWK" && break -done - -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -all: - @echo 'ac_maketemp="$(MAKE)"' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftest.make -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - SET_MAKE= -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -rm -rf .tst 2>/dev/null -mkdir .tst 2>/dev/null -if test -d .tst; then - am__leading_dot=. -else - am__leading_dot=_ -fi -rmdir .tst 2>/dev/null - -# test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && - test -f $srcdir/config.status; then - { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 -echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} - { (exit 1); exit 1; }; } -fi - -# test whether we have cygpath -if test -z "$CYGPATH_W"; then - if (cygpath --version) >/dev/null 2>/dev/null; then - CYGPATH_W='cygpath -w' - else - CYGPATH_W=echo - fi -fi - - -# Define the identity of the package. - PACKAGE=fprobe-ulog - VERSION=1.1 - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE "$PACKAGE" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define VERSION "$VERSION" -_ACEOF - -# Some tools Automake needs. - -ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} - - -AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} - - -AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} - - -AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} - - -MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} - -install_sh=${install_sh-"$am_aux_dir/install-sh"} - -# Installed binaries are usually stripped using `strip' when the user -# run `make install-strip'. However `strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the `STRIP' environment variable to overrule this program. -if test "$cross_compiling" != no; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - STRIP=$ac_ct_STRIP -else - STRIP="$ac_cv_prog_STRIP" -fi - -fi -INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" - -# We need awk for the "check" target. The system "awk" is bad on -# some platforms. -# Always define AMTAR for backward compatibility. - -AMTAR=${AMTAR-"${am_missing_run}tar"} - -am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' - - - - - - ac_config_headers="$ac_config_headers config.h" - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi - -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - test -n "$ac_ct_CC" && break -done - - CC=$ac_ct_CC -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext - break;; - * ) - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 - -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_compiler_gnu=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_prog_cc_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_stdc=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; -esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -DEPDIR="${am__leading_dot}deps" - - ac_config_commands="$ac_config_commands depfiles" - - -am_make=${MAKE-make} -cat > confinc << 'END' -am__doit: - @echo done -.PHONY: am__doit -END -# If we don't find an include directive, just comment out the code. -echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 -echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 -am__include="#" -am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# We grep out `Entering directory' and `Leaving directory' -# messages which can occur if `w' ends up in MAKEFLAGS. -# In particular we don't look at `^make:' because GNU make might -# be invoked under some other name (usually "gmake"), in which -# case it prints its new name instead of `make'. -if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then - am__include=include - am__quote= - _am_result=GNU -fi -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then - am__include=.include - am__quote="\"" - _am_result=BSD - fi -fi - - -echo "$as_me:$LINENO: result: $_am_result" >&5 -echo "${ECHO_T}$_am_result" >&6 -rm -f confinc confmf - -# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then - enableval="$enable_dependency_tracking" - -fi; -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' -fi - - -if test "x$enable_dependency_tracking" != xno; then - AMDEP_TRUE= - AMDEP_FALSE='#' -else - AMDEP_TRUE='#' - AMDEP_FALSE= -fi - - - - -depcc="$CC" am_compiler_list= - -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named `D' -- because `-MD' means `put the output - # in D'. - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CC_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with - # Solaris 8's {/usr,}/bin/sh. - touch sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - case $depmode in - nosideeffect) - # after this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - none) break ;; - esac - # We check with `-c' and `-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle `-M -o', and we need to detect this. - if depmode=$depmode \ - source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CC_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CC_dependencies_compiler_type=none -fi - -fi -echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 -CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - - -if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then - am__fastdepCC_TRUE= - am__fastdepCC_FALSE='#' -else - am__fastdepCC_TRUE='#' - am__fastdepCC_FALSE= -fi - - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 -if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - done - done - ;; -esac -done - - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the path is relative. - INSTALL=$ac_install_sh - fi -fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -RANLIB=$ac_cv_prog_RANLIB -if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_RANLIB"; then - ac_ct_RANLIB=$RANLIB - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_RANLIB"; then - ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_RANLIB="ranlib" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" -fi -fi -ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB -if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - - RANLIB=$ac_ct_RANLIB -else - RANLIB="$ac_cv_prog_RANLIB" -fi - - - - -echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 -echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6 -if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char pthread_create (); -int -main () -{ -pthread_create (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_pthread_pthread_create=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_pthread_pthread_create=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5 -echo "${ECHO_T}$ac_cv_lib_pthread_pthread_create" >&6 -if test $ac_cv_lib_pthread_pthread_create = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBPTHREAD 1 -_ACEOF - - LIBS="-lpthread $LIBS" - -else - { { echo "$as_me:$LINENO: error: POSIX threads not found" >&5 -echo "$as_me: error: POSIX threads not found" >&2;} - { (exit 1); exit 1; }; } -fi - - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether non-existent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep - - -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_header_stdc=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_Header=no" -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - -if test "${ac_cv_header_inttypes_h+set}" = set; then - echo "$as_me:$LINENO: checking for inttypes.h" >&5 -echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6 -if test "${ac_cv_header_inttypes_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -echo "$as_me:$LINENO: result: $ac_cv_header_inttypes_h" >&5 -echo "${ECHO_T}$ac_cv_header_inttypes_h" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking inttypes.h usability" >&5 -echo $ECHO_N "checking inttypes.h usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_header_compiler=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 - -# Is the header present? -echo "$as_me:$LINENO: checking inttypes.h presence" >&5 -echo $ECHO_N "checking inttypes.h presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: inttypes.h: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: inttypes.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: inttypes.h: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: inttypes.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: inttypes.h: present but cannot be compiled" >&5 -echo "$as_me: WARNING: inttypes.h: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: inttypes.h: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: inttypes.h: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: inttypes.h: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: inttypes.h: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: inttypes.h: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: inttypes.h: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: inttypes.h: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: inttypes.h: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: inttypes.h: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: inttypes.h: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -echo "$as_me:$LINENO: checking for inttypes.h" >&5 -echo $ECHO_N "checking for inttypes.h... $ECHO_C" >&6 -if test "${ac_cv_header_inttypes_h+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_header_inttypes_h=$ac_header_preproc -fi -echo "$as_me:$LINENO: result: $ac_cv_header_inttypes_h" >&5 -echo "${ECHO_T}$ac_cv_header_inttypes_h" >&6 - -fi -if test $ac_cv_header_inttypes_h = yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_INTTYPES_H -_ACEOF - -else - echo "$as_me:$LINENO: checking for int" >&5 -echo $ECHO_N "checking for int... $ECHO_C" >&6 -if test "${ac_cv_type_int+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if ((int *) 0) - return 0; -if (sizeof (int)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_int=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_type_int=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_int" >&5 -echo "${ECHO_T}$ac_cv_type_int" >&6 - -echo "$as_me:$LINENO: checking size of int" >&5 -echo $ECHO_N "checking size of int... $ECHO_C" >&6 -if test "${ac_cv_sizeof_int+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$ac_cv_type_int" = yes; then - # The cast to unsigned long works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (int))) >= 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (int))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (int))) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (int))) >= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo= ac_hi= -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (int))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr '(' $ac_mid ')' + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) ac_cv_sizeof_int=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (int), 77 -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (int), 77 -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } ;; -esac -else - if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 -echo "$as_me: error: internal error: not reached in cross-compile" >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -long longval () { return (long) (sizeof (int)); } -unsigned long ulongval () { return (long) (sizeof (int)); } -#include -#include -int -main () -{ - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - exit (1); - if (((long) (sizeof (int))) < 0) - { - long i = longval (); - if (i != ((long) (sizeof (int)))) - exit (1); - fprintf (f, "%ld\n", i); - } - else - { - unsigned long i = ulongval (); - if (i != ((long) (sizeof (int)))) - exit (1); - fprintf (f, "%lu\n", i); - } - exit (ferror (f) || fclose (f) != 0); - - ; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sizeof_int=`cat conftest.val` -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (int), 77 -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (int), 77 -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -rm -f conftest.val -else - ac_cv_sizeof_int=0 -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5 -echo "${ECHO_T}$ac_cv_sizeof_int" >&6 -cat >>confdefs.h <<_ACEOF -#define SIZEOF_INT $ac_cv_sizeof_int -_ACEOF - - - echo "$as_me:$LINENO: checking for long" >&5 -echo $ECHO_N "checking for long... $ECHO_C" >&6 -if test "${ac_cv_type_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if ((long *) 0) - return 0; -if (sizeof (long)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_long=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_type_long=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_long" >&5 -echo "${ECHO_T}$ac_cv_type_long" >&6 - -echo "$as_me:$LINENO: checking size of long" >&5 -echo $ECHO_N "checking size of long... $ECHO_C" >&6 -if test "${ac_cv_sizeof_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$ac_cv_type_long" = yes; then - # The cast to unsigned long works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long))) >= 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long))) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long))) >= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo= ac_hi= -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr '(' $ac_mid ')' + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) ac_cv_sizeof_long=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77 -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (long), 77 -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } ;; -esac -else - if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 -echo "$as_me: error: internal error: not reached in cross-compile" >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -long longval () { return (long) (sizeof (long)); } -unsigned long ulongval () { return (long) (sizeof (long)); } -#include -#include -int -main () -{ - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - exit (1); - if (((long) (sizeof (long))) < 0) - { - long i = longval (); - if (i != ((long) (sizeof (long)))) - exit (1); - fprintf (f, "%ld\n", i); - } - else - { - unsigned long i = ulongval (); - if (i != ((long) (sizeof (long)))) - exit (1); - fprintf (f, "%lu\n", i); - } - exit (ferror (f) || fclose (f) != 0); - - ; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sizeof_long=`cat conftest.val` -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77 -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (long), 77 -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -rm -f conftest.val -else - ac_cv_sizeof_long=0 -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5 -echo "${ECHO_T}$ac_cv_sizeof_long" >&6 -cat >>confdefs.h <<_ACEOF -#define SIZEOF_LONG $ac_cv_sizeof_long -_ACEOF - - - echo "$as_me:$LINENO: checking for long long" >&5 -echo $ECHO_N "checking for long long... $ECHO_C" >&6 -if test "${ac_cv_type_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if ((long long *) 0) - return 0; -if (sizeof (long long)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_long_long=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_type_long_long=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5 -echo "${ECHO_T}$ac_cv_type_long_long" >&6 - -echo "$as_me:$LINENO: checking size of long long" >&5 -echo $ECHO_N "checking size of long long... $ECHO_C" >&6 -if test "${ac_cv_sizeof_long_long+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$ac_cv_type_long_long" = yes; then - # The cast to unsigned long works around a bug in the HP C Compiler - # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects - # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. - # This bug is HP SR number 8606223364. - if test "$cross_compiling" = yes; then - # Depending upon the size, compute the lo and hi bounds. -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long long))) >= 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=0 ac_mid=0 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr $ac_mid + 1` - if test $ac_lo -le $ac_mid; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long long))) < 0)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=-1 ac_mid=-1 - while :; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long long))) >= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_lo=$ac_mid; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_hi=`expr '(' $ac_mid ')' - 1` - if test $ac_mid -le $ac_hi; then - ac_lo= ac_hi= - break - fi - ac_mid=`expr 2 '*' $ac_mid` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo= ac_hi= -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -# Binary search between lo and hi bounds. -while test "x$ac_lo" != "x$ac_hi"; do - ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -static int test_array [1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)]; -test_array [0] = 0 - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_hi=$ac_mid -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_lo=`expr '(' $ac_mid ')' + 1` -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -case $ac_lo in -?*) ac_cv_sizeof_long_long=$ac_lo;; -'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77 -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (long long), 77 -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } ;; -esac -else - if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 -echo "$as_me: error: internal error: not reached in cross-compile" >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -long longval () { return (long) (sizeof (long long)); } -unsigned long ulongval () { return (long) (sizeof (long long)); } -#include -#include -int -main () -{ - - FILE *f = fopen ("conftest.val", "w"); - if (! f) - exit (1); - if (((long) (sizeof (long long))) < 0) - { - long i = longval (); - if (i != ((long) (sizeof (long long)))) - exit (1); - fprintf (f, "%ld\n", i); - } - else - { - unsigned long i = ulongval (); - if (i != ((long) (sizeof (long long)))) - exit (1); - fprintf (f, "%lu\n", i); - } - exit (ferror (f) || fclose (f) != 0); - - ; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_sizeof_long_long=`cat conftest.val` -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77 -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute sizeof (long long), 77 -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -rm -f conftest.val -else - ac_cv_sizeof_long_long=0 -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5 -echo "${ECHO_T}$ac_cv_sizeof_long_long" >&6 -cat >>confdefs.h <<_ACEOF -#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long -_ACEOF - - - -fi - - - - - -cat >>confdefs.h <<_ACEOF -#define OS_LINUX -_ACEOF - -CFLAGS="$CFLAGS -D_BSD_SOURCE" - - -echo "$as_me:$LINENO: checking which memory bulk indexing mode to use" >&5 -echo $ECHO_N "checking which memory bulk indexing mode to use... $ECHO_C" >&6 - -# Check whether --with-membulk or --without-membulk was given. -if test "${with_membulk+set}" = set; then - withval="$with_membulk" - mem="$withval" -else - mem="ptr" -fi; - -case "$mem" in - ptr) - mem_bits="0" - ;; - index8) - mem_bits="8" - ;; - index16) - mem_bits="16" - ;; - *) - { { echo "$as_me:$LINENO: error: Invalid argument: \"$mem\"" >&5 -echo "$as_me: error: Invalid argument: \"$mem\"" >&2;} - { (exit 1); exit 1; }; } - ;; -esac - -echo "$as_me:$LINENO: result: \"$mem\"" >&5 -echo "${ECHO_T}\"$mem\"" >&6 - -cat >>confdefs.h <<_ACEOF -#define MEM_BITS $mem_bits -_ACEOF - - - -echo "$as_me:$LINENO: checking which hash type and size to use" >&5 -echo $ECHO_N "checking which hash type and size to use... $ECHO_C" >&6 - -# Check whether --with-hash or --without-hash was given. -if test "${with_hash+set}" = set; then - withval="$with_hash" - hash="$withval" -else - hash="crc16" -fi; - -hash_type=`echo "$hash"|cut -b -3` -hash_bits=`echo "$hash"|cut -b 4-` - -if test "$hash_type" = "xor"; then - -cat >>confdefs.h <<_ACEOF -#define HASH_TYPE_XOR -_ACEOF - - if test "$hash_bits" != "8" -a "$hash_bits" != "16"; then - { { echo "$as_me:$LINENO: error: Invalid argument: \"$withval\"" >&5 -echo "$as_me: error: Invalid argument: \"$withval\"" >&2;} - { (exit 1); exit 1; }; } - fi -else - if test "$hash" != "crc16"; then - { { echo "$as_me:$LINENO: error: Invalid argument: \"$hash\"" >&5 -echo "$as_me: error: Invalid argument: \"$hash\"" >&2;} - { (exit 1); exit 1; }; } - fi - -cat >>confdefs.h <<_ACEOF -#define HASH_TYPE_CRC -_ACEOF - -fi - - -cat >>confdefs.h <<_ACEOF -#define HASH_BITS $hash_bits -_ACEOF - -echo "$as_me:$LINENO: result: \"$hash\"" >&5 -echo "${ECHO_T}\"$hash\"" >&6 - - -echo "$as_me:$LINENO: checking whether to enable uptime trick" >&5 -echo $ECHO_N "checking whether to enable uptime trick... $ECHO_C" >&6 -# Check whether --enable-uptime_trick or --disable-uptime_trick was given. -if test "${enable_uptime_trick+set}" = set; then - enableval="$enable_uptime_trick" - uptime_trick="$enableval" -else - uptime_trick="yes" -fi; -case "$uptime_trick" in - yes) - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -cat >>confdefs.h <<_ACEOF -#define UPTIME_TRICK -_ACEOF - - ;; - *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - ;; -esac - - -echo "$as_me:$LINENO: checking whether to enable icmp trick" >&5 -echo $ECHO_N "checking whether to enable icmp trick... $ECHO_C" >&6 -# Check whether --enable-icmp_trick or --disable-icmp_trick was given. -if test "${enable_icmp_trick+set}" = set; then - enableval="$enable_icmp_trick" - icmp_trick="$enableval" -else - icmp_trick="yes" -fi; -case "$icmp_trick" in - yes) - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -cat >>confdefs.h <<_ACEOF -#define ICMP_TRICK -_ACEOF - - ;; - cisco) - echo "$as_me:$LINENO: result: yes: cisco" >&5 -echo "${ECHO_T}yes: cisco" >&6 - -cat >>confdefs.h <<_ACEOF -#define UPTIME_TRICK_CISCO -_ACEOF - - ;; - *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - ;; -esac - - -echo "$as_me:$LINENO: checking whether to enable debugging" >&5 -echo $ECHO_N "checking whether to enable debugging... $ECHO_C" >&6 -# Check whether --enable-debug or --disable-debug was given. -if test "${enable_debug+set}" = set; then - enableval="$enable_debug" - debug="$enableval" -else - debug="no" -fi; -case "$debug" in - no) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - debug_val="0" - ;; - yes) - echo "$as_me:$LINENO: result: all" >&5 -echo "${ECHO_T}all" >&6 - debug_val="-1" - ;; - *) - echo "$as_me:$LINENO: result: custom: $debug" >&5 -echo "${ECHO_T}custom: $debug" >&6 - debug_val="0" - debug=`echo $debug|tr , " "` - for i in $debug; do - debug_val="$debug_val | DEBUG_$i" - done - ;; -esac - -cat >>confdefs.h <<_ACEOF -#define DEBUG ($debug_val) -_ACEOF - - - -echo "$as_me:$LINENO: checking whether to enable runtime messages" >&5 -echo $ECHO_N "checking whether to enable runtime messages... $ECHO_C" >&6 -# Check whether --enable-messages or --disable-messages was given. -if test "${enable_messages+set}" = set; then - enableval="$enable_messages" - messages="$enableval" -else - messages="no" -fi; -case "$messages" in - yes) - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - -cat >>confdefs.h <<_ACEOF -#define MESSAGES -_ACEOF - - ;; - *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - ;; -esac - - -echo "$as_me:$LINENO: checking directory to store pidfiles" >&5 -echo $ECHO_N "checking directory to store pidfiles... $ECHO_C" >&6 - -# Check whether --with-piddir or --without-piddir was given. -if test "${with_piddir+set}" = set; then - withval="$with_piddir" - piddir="$withval" -else - piddir="/var/run" -fi; - -cat >>confdefs.h <<_ACEOF -#define PID_DIR "$piddir" -_ACEOF - - echo "$as_me:$LINENO: result: \"$piddir\"" >&5 -echo "${ECHO_T}\"$piddir\"" >&6 - - -CFLAGS="$CFLAGS -D_REENTRANT" -CFLAGS="$CFLAGS -DWALL -W -Wall" - - - -DATE=`date +%Y-%m-%d` - - - ac_config_files="$ac_config_files Makefile src/Makefile src/libipulog/Makefile" - - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - -if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } -fi -if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } -fi - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix -fi -DUALCASE=1; export DUALCASE # for MKS sh - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | - sed ' - N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, - t loop - s,-$,, - s,^['$as_cr_digits']*\n,, - ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno - # Exit status is that of the last command. - exit -} - - -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; -esac - -if expr a : '\(a\)' >/dev/null 2>&1; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.file - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 -_ACEOF - -# Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi - -cat >>$CONFIG_STATUS <<\_ACEOF - -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2003 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -INSTALL="$INSTALL" -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` - ac_shift=: - ;; - -*) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; - esac - - case $ac_option in - # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -# -# INIT-COMMANDS section. -# - -AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" - -_ACEOF - - - -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_config_target in $ac_config_targets -do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "src/libipulog/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/libipulog/Makefile" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. -$debug || -{ - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} - -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@target@,$target,;t t -s,@target_cpu@,$target_cpu,;t t -s,@target_vendor@,$target_vendor,;t t -s,@target_os@,$target_os,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CYGPATH_W@,$CYGPATH_W,;t t -s,@PACKAGE@,$PACKAGE,;t t -s,@VERSION@,$VERSION,;t t -s,@ACLOCAL@,$ACLOCAL,;t t -s,@AUTOCONF@,$AUTOCONF,;t t -s,@AUTOMAKE@,$AUTOMAKE,;t t -s,@AUTOHEADER@,$AUTOHEADER,;t t -s,@MAKEINFO@,$MAKEINFO,;t t -s,@install_sh@,$install_sh,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t -s,@mkdir_p@,$mkdir_p,;t t -s,@AWK@,$AWK,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@am__leading_dot@,$am__leading_dot,;t t -s,@AMTAR@,$AMTAR,;t t -s,@am__tar@,$am__tar,;t t -s,@am__untar@,$am__untar,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@DEPDIR@,$DEPDIR,;t t -s,@am__include@,$am__include,;t t -s,@am__quote@,$am__quote,;t t -s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t -s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t -s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t -s,@CCDEPMODE@,$CCDEPMODE,;t t -s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t -s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@DATE@,$DATE,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs - -cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in - if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - rm -f $ac_file - mv $tmp/config.h $ac_file - fi - else - cat $tmp/config.h - rm -f $tmp/config.h - fi -# Compute $ac_file's index in $config_headers. -_am_stamp_count=1 -for _am_header in $config_headers :; do - case $_am_header in - $ac_file | $ac_file:* ) - break ;; - * ) - _am_stamp_count=`expr $_am_stamp_count + 1` ;; - esac -done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} - { (exit 1); exit 1; }; }; } - - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done - ;; - esac -done -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - diff --git a/trunk/configure.in b/trunk/configure.in deleted file mode 100644 index 7116712..0000000 --- a/trunk/configure.in +++ /dev/null @@ -1,186 +0,0 @@ -dnl Disable config.cache -define([AC_CACHE_LOAD], ) -define([AC_CACHE_SAVE], ) - -AC_INIT -AC_CANONICAL_SYSTEM -AM_INIT_AUTOMAKE(fprobe-ulog,1.1) -AM_CONFIG_HEADER(config.h) - -AC_PROG_CC -AC_PROG_INSTALL -AC_PROG_RANLIB -dnl AC_CHECK_TOOL(RANLIB, ranlib, :) - -AC_CHECK_LIB(pthread, pthread_create, , [AC_ERROR(POSIX threads not found)]) - -dnl ************************************************ -dnl inttypes - -AC_CHECK_HEADER(inttypes.h, AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, , Have inttypes.h), - [AC_CHECK_SIZEOF(int, 8) - AC_CHECK_SIZEOF(long, 8) - AC_CHECK_SIZEOF(long long, 8)] -) - -dnl ************************************************ -dnl OS type - -AC_DEFINE_UNQUOTED(OS_LINUX, , OS type) -CFLAGS="$CFLAGS -D_BSD_SOURCE" - -dnl ************************************************ -dnl Memory bulk indexing mode - -AC_MSG_CHECKING(which memory bulk indexing mode to use) -AC_ARG_WITH(membulk, - [ --with-membulk=MODE indexing mode: index8|index16|ptr [default=ptr]], - mem="$withval", mem="ptr") - -case "$mem" in - ptr) - mem_bits="0" - ;; - index8) - mem_bits="8" - ;; - index16) - mem_bits="16" - ;; - *) - AC_ERROR(Invalid argument: "$mem") - ;; -esac - -AC_MSG_RESULT("$mem") -AC_DEFINE_UNQUOTED(MEM_BITS, $mem_bits, Memory bulk indexing mode) - -dnl ************************************************ -dnl Hash type - -AC_MSG_CHECKING(which hash type and size to use) -AC_ARG_WITH(hash, - [ --with-hash=TYPE hash type: crc16|xor16|xor8 [default=crc16]], - hash="$withval", hash="crc16") - -hash_type=`echo "$hash"|cut -b -3` -hash_bits=`echo "$hash"|cut -b 4-` - -if test "$hash_type" = "xor"; then - AC_DEFINE_UNQUOTED(HASH_TYPE_XOR, , Hash type) - if test "$hash_bits" != "8" -a "$hash_bits" != "16"; then - AC_ERROR(Invalid argument: "$withval") - fi -else - if test "$hash" != "crc16"; then - AC_ERROR(Invalid argument: "$hash") - fi - AC_DEFINE_UNQUOTED(HASH_TYPE_CRC, , Hash type) -fi - -AC_DEFINE_UNQUOTED(HASH_BITS, $hash_bits , Hash size) -AC_MSG_RESULT("$hash") - -dnl ************************************************ -dnl Uptime trick - -AC_MSG_CHECKING(whether to enable uptime trick) -AC_ARG_ENABLE(uptime_trick, - [ --enable-uptime_trick enable uptime trick [default=yes]], - uptime_trick="$enableval", uptime_trick="yes") -case "$uptime_trick" in - yes) - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(UPTIME_TRICK, , Uptime trick) - ;; - *) - AC_MSG_RESULT(no) - ;; -esac - -dnl ************************************************ -dnl ICMP trick - -AC_MSG_CHECKING(whether to enable icmp trick) -AC_ARG_ENABLE(icmp_trick, - [ --enable-icmp_trick enable icmp trick: yes|cisco|no [default=yes]], - icmp_trick="$enableval", icmp_trick="yes") -case "$icmp_trick" in - yes) - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(ICMP_TRICK, , ICMP trick) - ;; - cisco) - AC_MSG_RESULT(yes: cisco) - AC_DEFINE_UNQUOTED(UPTIME_TRICK_CISCO, , Uptime trick) - ;; - *) - AC_MSG_RESULT(no) - ;; -esac - -dnl ************************************************ -dnl Debugging output - -AC_MSG_CHECKING(whether to enable debugging) -AC_ARG_ENABLE(debug, - [ --enable-debug enable debugging [default=no]], - debug="$enableval", debug="no") -case "$debug" in - no) - AC_MSG_RESULT(no) - debug_val="0" - ;; - yes) - AC_MSG_RESULT(all) - debug_val="-1" - ;; - *) - AC_MSG_RESULT(custom: $debug) - debug_val="0" - debug=`echo $debug|tr , " "` - for i in $debug; do - debug_val="$debug_val | DEBUG_$i" - done - ;; -esac -AC_DEFINE_UNQUOTED(DEBUG, ($debug_val) , Debugging output) - -dnl ************************************************ -dnl Runtime messages - -AC_MSG_CHECKING(whether to enable runtime messages) -AC_ARG_ENABLE(messages, - [ --enable-messages enable runtime messages [default=no]], - messages="$enableval", messages="no") -case "$messages" in - yes) - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(MESSAGES, , Runtime messages) - ;; - *) - AC_MSG_RESULT(no) - ;; -esac - -dnl ************************************************ -dnl Pidfiles location - -AC_MSG_CHECKING(directory to store pidfiles) -AC_ARG_WITH(piddir, - [ --with-piddir=DIR pidfiles location [default=/var/run]], - piddir="$withval", piddir="/var/run") - AC_DEFINE_UNQUOTED(PID_DIR, "$piddir", Pidfiles location) - AC_MSG_RESULT("$piddir") - -dnl ************************************************ - -CFLAGS="$CFLAGS -D_REENTRANT" -CFLAGS="$CFLAGS -DWALL -W -Wall" - -AC_SUBST(PACKAGE) -AC_SUBST(VERSION) -DATE=`date +%Y-%m-%d` -AC_SUBST(DATE) - -AC_OUTPUT(Makefile src/Makefile src/libipulog/Makefile) diff --git a/trunk/mkinstalldirs b/trunk/mkinstalldirs deleted file mode 100755 index 18ffa9e..0000000 --- a/trunk/mkinstalldirs +++ /dev/null @@ -1,40 +0,0 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy -# Author: Noah Friedman -# Created: 1993-05-16 -# Public domain - -# $Id: mkinstalldirs,v 1.2.2.1 2004/02/02 08:06:23 sla Exp $ - -errstatus=0 - -for file -do - set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` - shift - - pathcomp= - for d - do - pathcomp="$pathcomp$d" - case "$pathcomp" in - -* ) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" - - mkdir "$pathcomp" || lasterr=$? - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - fi - fi - - pathcomp="$pathcomp/" - done -done - -exit $errstatus - -# mkinstalldirs ends here diff --git a/trunk/src/Makefile b/trunk/src/Makefile deleted file mode 100644 index f2ec840..0000000 --- a/trunk/src/Makefile +++ /dev/null @@ -1,560 +0,0 @@ -# Makefile.in generated by automake 1.9.4 from Makefile.am. -# src/Makefile. Generated from Makefile.in by configure. - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - - - -SOURCES = $(fprobe_ulog_SOURCES) - -srcdir = . -top_srcdir = .. - -pkgdatadir = $(datadir)/fprobe-ulog -pkglibdir = $(libdir)/fprobe-ulog -pkgincludedir = $(includedir)/fprobe-ulog -top_builddir = .. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = /bin/install -c -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = i686-pc-linux-gnu -host_triplet = i686-pc-linux-gnu -target_triplet = i686-pc-linux-gnu -sbin_PROGRAMS = fprobe-ulog$(EXEEXT) -subdir = src -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)" -sbinPROGRAMS_INSTALL = $(INSTALL_PROGRAM) -PROGRAMS = $(sbin_PROGRAMS) -am_fprobe_ulog_OBJECTS = fprobe-ulog.$(OBJEXT) netflow.$(OBJEXT) \ - hash.$(OBJEXT) mem.$(OBJEXT) my_getopt.$(OBJEXT) \ - my_log.$(OBJEXT) -fprobe_ulog_OBJECTS = $(am_fprobe_ulog_OBJECTS) -fprobe_ulog_DEPENDENCIES = libipulog/libipulog.a -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -depcomp = -am__depfiles_maybe = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SOURCES = $(fprobe_ulog_SOURCES) -DIST_SOURCES = $(fprobe_ulog_SOURCES) -RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ - html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive -man8dir = $(mandir)/man8 -NROFF = nroff -MANS = $(man_MANS) -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run aclocal-1.9 -AMDEP_FALSE = # -AMDEP_TRUE = -AMTAR = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run tar -AUTOCONF = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoconf -AUTOHEADER = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoheader -AUTOMAKE = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run automake-1.9 -AWK = gawk -CC = gcc -CCDEPMODE = depmode=none -CFLAGS = -g -O2 -D_BSD_SOURCE -D_REENTRANT -DWALL -W -Wall -CPP = gcc -E -CPPFLAGS = -CYGPATH_W = echo -DATE = 2007-10-26 -DEFS = -DHAVE_CONFIG_H -DEPDIR = .deps -ECHO_C = -ECHO_N = -n -ECHO_T = -EGREP = grep -E -EXEEXT = -INSTALL_DATA = ${INSTALL} -m 644 -INSTALL_PROGRAM = ${INSTALL} -INSTALL_SCRIPT = ${INSTALL} -INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -LIBOBJS = -LIBS = -lpthread -LTLIBOBJS = -MAKEINFO = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run makeinfo -OBJEXT = o -PACKAGE = fprobe-ulog -PACKAGE_BUGREPORT = -PACKAGE_NAME = -PACKAGE_STRING = -PACKAGE_TARNAME = -PACKAGE_VERSION = -PATH_SEPARATOR = : -RANLIB = ranlib -SET_MAKE = -SHELL = /bin/sh -STRIP = -VERSION = 1.1 -ac_ct_CC = gcc -ac_ct_RANLIB = ranlib -ac_ct_STRIP = -am__fastdepCC_FALSE = -am__fastdepCC_TRUE = # -am__include = include -am__leading_dot = . -am__quote = -am__tar = ${AMTAR} chof - "$$tardir" -am__untar = ${AMTAR} xf - -bindir = ${exec_prefix}/bin -build = i686-pc-linux-gnu -build_alias = -build_cpu = i686 -build_os = linux-gnu -build_vendor = pc -datadir = ${prefix}/share -exec_prefix = ${prefix} -host = i686-pc-linux-gnu -host_alias = -host_cpu = i686 -host_os = linux-gnu -host_vendor = pc -includedir = ${prefix}/include -infodir = ${prefix}/info -install_sh = /home/sapan/fprobe-ulog-1.1/install-sh -libdir = ${exec_prefix}/lib -libexecdir = ${exec_prefix}/libexec -localstatedir = ${prefix}/var -mandir = ${prefix}/man -mkdir_p = mkdir -p -- -oldincludedir = /usr/include -prefix = /usr/local -program_transform_name = s,x,x, -sbindir = ${exec_prefix}/sbin -sharedstatedir = ${prefix}/com -sysconfdir = ${prefix}/etc -target = i686-pc-linux-gnu -target_alias = -target_cpu = i686 -target_os = linux-gnu -target_vendor = pc -INCLUDES = -I$(top_srcdir)/src/libipulog/include -fprobe_ulog_SOURCES = fprobe-ulog.c fprobe-ulog.h \ - netflow.c netflow.h \ - hash.c hash.h \ - mem.c mem.h \ - my_getopt.c my_getopt.h \ - my_log.c my_log.h \ - common.h my_inttypes.h - -man_MANS = fprobe-ulog.8 -SUBDIRS = libipulog -EXTRA_DIST = ${man_MANS} -fprobe_ulog_LDADD = libipulog/libipulog.a -all: all-recursive - -.SUFFIXES: -.SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu --ignore-deps src/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu --ignore-deps src/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -install-sbinPROGRAMS: $(sbin_PROGRAMS) - @$(NORMAL_INSTALL) - test -z "$(sbindir)" || $(mkdir_p) "$(DESTDIR)$(sbindir)" - @list='$(sbin_PROGRAMS)'; for p in $$list; do \ - p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ - if test -f $$p \ - ; then \ - f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(sbindir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(sbindir)/$$f" || exit 1; \ - else :; fi; \ - done - -uninstall-sbinPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(sbin_PROGRAMS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " rm -f '$(DESTDIR)$(sbindir)/$$f'"; \ - rm -f "$(DESTDIR)$(sbindir)/$$f"; \ - done - -clean-sbinPROGRAMS: - -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) -fprobe-ulog$(EXEEXT): $(fprobe_ulog_OBJECTS) $(fprobe_ulog_DEPENDENCIES) - @rm -f fprobe-ulog$(EXEEXT) - $(LINK) $(fprobe_ulog_LDFLAGS) $(fprobe_ulog_OBJECTS) $(fprobe_ulog_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -.c.o: - $(COMPILE) -c $< - -.c.obj: - $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: -install-man8: $(man8_MANS) $(man_MANS) - @$(NORMAL_INSTALL) - test -z "$(man8dir)" || $(mkdir_p) "$(DESTDIR)$(man8dir)" - @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.8*) list="$$list $$i" ;; \ - esac; \ - done; \ - for i in $$list; do \ - if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ - else file=$$i; fi; \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 8*) ;; \ - *) ext='8' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst"; \ - done -uninstall-man8: - @$(NORMAL_UNINSTALL) - @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.8*) list="$$list $$i" ;; \ - esac; \ - done; \ - for i in $$list; do \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 8*) ;; \ - *) ext='8' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " rm -f '$(DESTDIR)$(man8dir)/$$inst'"; \ - rm -f "$(DESTDIR)$(man8dir)/$$inst"; \ - done - -# This directory's subdirectories are mostly independent; you can cd -# into them and run `make' without going through this Makefile. -# To change the values of `make' variables: instead of editing Makefiles, -# (1) if the variable is set in `config.status', edit `config.status' -# (which will cause the Makefiles to be regenerated when you run `make'); -# (2) otherwise, pass the desired values on the `make' command line. -$(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - rev=''; for subdir in $$list; do \ - if test "$$subdir" = "."; then :; else \ - rev="$$subdir $$rev"; \ - fi; \ - done; \ - rev="$$rev ."; \ - target=`echo $@ | sed s/-recursive//`; \ - for subdir in $$rev; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done && test -z "$$fail" -tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ - done -ctags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ - done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ - || exit 1; \ - distdir=`$(am__cd) $(distdir) && pwd`; \ - top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ - distdir) \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-recursive -all-am: Makefile $(PROGRAMS) $(MANS) -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ - done -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-generic clean-sbinPROGRAMS mostlyclean-am - -distclean: distclean-recursive - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -info: info-recursive - -info-am: - -install-data-am: install-man - -install-exec-am: install-sbinPROGRAMS - -install-info: install-info-recursive - -install-man: install-man8 - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-info-am uninstall-man uninstall-sbinPROGRAMS - -uninstall-info: uninstall-info-recursive - -uninstall-man: uninstall-man8 - -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-generic clean-recursive clean-sbinPROGRAMS ctags \ - ctags-recursive distclean distclean-compile distclean-generic \ - distclean-recursive distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-exec install-exec-am install-info \ - install-info-am install-man install-man8 install-sbinPROGRAMS \ - install-strip installcheck installcheck-am installdirs \ - installdirs-am maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-recursive pdf pdf-am ps ps-am \ - tags tags-recursive uninstall uninstall-am uninstall-info-am \ - uninstall-man uninstall-man8 uninstall-sbinPROGRAMS - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/trunk/src/Makefile.am b/trunk/src/Makefile.am deleted file mode 100644 index fa46d22..0000000 --- a/trunk/src/Makefile.am +++ /dev/null @@ -1,18 +0,0 @@ -INCLUDES = -I$(top_srcdir)/src/libipulog/include - -sbin_PROGRAMS = fprobe-ulog -fprobe_ulog_SOURCES = fprobe-ulog.c fprobe-ulog.h \ - netflow.c netflow.h \ - hash.c hash.h \ - mem.c mem.h \ - my_getopt.c my_getopt.h \ - my_log.c my_log.h \ - common.h my_inttypes.h - -man_MANS = fprobe-ulog.8 - -SUBDIRS = libipulog - -EXTRA_DIST = ${man_MANS} - -fprobe_ulog_LDADD = libipulog/libipulog.a diff --git a/trunk/src/Makefile.in b/trunk/src/Makefile.in deleted file mode 100644 index 6c7d54c..0000000 --- a/trunk/src/Makefile.in +++ /dev/null @@ -1,560 +0,0 @@ -# Makefile.in generated by automake 1.9.4 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -SOURCES = $(fprobe_ulog_SOURCES) - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -sbin_PROGRAMS = fprobe-ulog$(EXEEXT) -subdir = src -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)" -sbinPROGRAMS_INSTALL = $(INSTALL_PROGRAM) -PROGRAMS = $(sbin_PROGRAMS) -am_fprobe_ulog_OBJECTS = fprobe-ulog.$(OBJEXT) netflow.$(OBJEXT) \ - hash.$(OBJEXT) mem.$(OBJEXT) my_getopt.$(OBJEXT) \ - my_log.$(OBJEXT) -fprobe_ulog_OBJECTS = $(am_fprobe_ulog_OBJECTS) -fprobe_ulog_DEPENDENCIES = libipulog/libipulog.a -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -depcomp = -am__depfiles_maybe = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SOURCES = $(fprobe_ulog_SOURCES) -DIST_SOURCES = $(fprobe_ulog_SOURCES) -RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ - html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive -man8dir = $(mandir)/man8 -NROFF = nroff -MANS = $(man_MANS) -ETAGS = etags -CTAGS = ctags -DIST_SUBDIRS = $(SUBDIRS) -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DATE = @DATE@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LTLIBOBJS = @LTLIBOBJS@ -MAKEINFO = @MAKEINFO@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -INCLUDES = -I$(top_srcdir)/src/libipulog/include -fprobe_ulog_SOURCES = fprobe-ulog.c fprobe-ulog.h \ - netflow.c netflow.h \ - hash.c hash.h \ - mem.c mem.h \ - my_getopt.c my_getopt.h \ - my_log.c my_log.h \ - common.h my_inttypes.h - -man_MANS = fprobe-ulog.8 -SUBDIRS = libipulog -EXTRA_DIST = ${man_MANS} -fprobe_ulog_LDADD = libipulog/libipulog.a -all: all-recursive - -.SUFFIXES: -.SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu --ignore-deps src/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu --ignore-deps src/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -install-sbinPROGRAMS: $(sbin_PROGRAMS) - @$(NORMAL_INSTALL) - test -z "$(sbindir)" || $(mkdir_p) "$(DESTDIR)$(sbindir)" - @list='$(sbin_PROGRAMS)'; for p in $$list; do \ - p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ - if test -f $$p \ - ; then \ - f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(sbindir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(sbinPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(sbindir)/$$f" || exit 1; \ - else :; fi; \ - done - -uninstall-sbinPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(sbin_PROGRAMS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " rm -f '$(DESTDIR)$(sbindir)/$$f'"; \ - rm -f "$(DESTDIR)$(sbindir)/$$f"; \ - done - -clean-sbinPROGRAMS: - -test -z "$(sbin_PROGRAMS)" || rm -f $(sbin_PROGRAMS) -fprobe-ulog$(EXEEXT): $(fprobe_ulog_OBJECTS) $(fprobe_ulog_DEPENDENCIES) - @rm -f fprobe-ulog$(EXEEXT) - $(LINK) $(fprobe_ulog_LDFLAGS) $(fprobe_ulog_OBJECTS) $(fprobe_ulog_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -.c.o: - $(COMPILE) -c $< - -.c.obj: - $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: -install-man8: $(man8_MANS) $(man_MANS) - @$(NORMAL_INSTALL) - test -z "$(man8dir)" || $(mkdir_p) "$(DESTDIR)$(man8dir)" - @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.8*) list="$$list $$i" ;; \ - esac; \ - done; \ - for i in $$list; do \ - if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ - else file=$$i; fi; \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 8*) ;; \ - *) ext='8' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst"; \ - done -uninstall-man8: - @$(NORMAL_UNINSTALL) - @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.8*) list="$$list $$i" ;; \ - esac; \ - done; \ - for i in $$list; do \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 8*) ;; \ - *) ext='8' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " rm -f '$(DESTDIR)$(man8dir)/$$inst'"; \ - rm -f "$(DESTDIR)$(man8dir)/$$inst"; \ - done - -# This directory's subdirectories are mostly independent; you can cd -# into them and run `make' without going through this Makefile. -# To change the values of `make' variables: instead of editing Makefiles, -# (1) if the variable is set in `config.status', edit `config.status' -# (which will cause the Makefiles to be regenerated when you run `make'); -# (2) otherwise, pass the desired values on the `make' command line. -$(RECURSIVE_TARGETS): - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - dot_seen=yes; \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done; \ - if test "$$dot_seen" = "no"; then \ - $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ - fi; test -z "$$fail" - -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: - @set fnord $$MAKEFLAGS; amf=$$2; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ - *) list='$(SUBDIRS)' ;; \ - esac; \ - rev=''; for subdir in $$list; do \ - if test "$$subdir" = "."; then :; else \ - rev="$$subdir $$rev"; \ - fi; \ - done; \ - rev="$$rev ."; \ - target=`echo $@ | sed s/-recursive//`; \ - for subdir in $$rev; do \ - echo "Making $$target in $$subdir"; \ - if test "$$subdir" = "."; then \ - local_target="$$target-am"; \ - else \ - local_target="$$target"; \ - fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ - || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ - done && test -z "$$fail" -tags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ - done -ctags-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ - done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ - include_option=--etags-include; \ - empty_fix=.; \ - else \ - include_option=--include; \ - empty_fix=; \ - fi; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ - fi; \ - done; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ - || exit 1; \ - distdir=`$(am__cd) $(distdir) && pwd`; \ - top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ - $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ - distdir) \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-recursive -all-am: Makefile $(PROGRAMS) $(MANS) -installdirs: installdirs-recursive -installdirs-am: - for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ - done -install: install-recursive -install-exec: install-exec-recursive -install-data: install-data-recursive -uninstall: uninstall-recursive - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-recursive -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-recursive - -clean-am: clean-generic clean-sbinPROGRAMS mostlyclean-am - -distclean: distclean-recursive - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-recursive - -dvi-am: - -html: html-recursive - -info: info-recursive - -info-am: - -install-data-am: install-man - -install-exec-am: install-sbinPROGRAMS - -install-info: install-info-recursive - -install-man: install-man8 - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-recursive - -pdf-am: - -ps: ps-recursive - -ps-am: - -uninstall-am: uninstall-info-am uninstall-man uninstall-sbinPROGRAMS - -uninstall-info: uninstall-info-recursive - -uninstall-man: uninstall-man8 - -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-generic clean-recursive clean-sbinPROGRAMS ctags \ - ctags-recursive distclean distclean-compile distclean-generic \ - distclean-recursive distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-exec install-exec-am install-info \ - install-info-am install-man install-man8 install-sbinPROGRAMS \ - install-strip installcheck installcheck-am installdirs \ - installdirs-am maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-recursive pdf pdf-am ps ps-am \ - tags tags-recursive uninstall uninstall-am uninstall-info-am \ - uninstall-man uninstall-man8 uninstall-sbinPROGRAMS - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/trunk/src/common.h b/trunk/src/common.h deleted file mode 100644 index 29961fd..0000000 --- a/trunk/src/common.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: common.h,v 1.2.2.2 2004/02/02 08:06:24 sla Exp $ -*/ - -#ifndef _COMMON_H_ -#define _COMMON_H_ - -#define DBG my_log(LOG_DEBUG, "DBG: %s:%d", __FILE__, __LINE__) - -#include - -/* Capture*/ -#define DEBUG_C 1 -/* Unpending */ -#define DEBUG_U 2 -/* Scan */ -#define DEBUG_S 4 -/* Emit */ -#define DEBUG_E 8 -/* Memory */ -#define DEBUG_M 16 -/* Fill */ -#define DEBUG_F 32 -/* Info */ -#define DEBUG_I 64 - -#endif diff --git a/trunk/src/fprobe-ulog.8 b/trunk/src/fprobe-ulog.8 deleted file mode 100644 index 8d8aa8d..0000000 --- a/trunk/src/fprobe-ulog.8 +++ /dev/null @@ -1,176 +0,0 @@ -.TH fprobe-ulog 8 "2005-01-29" "fprobe-ulog 1.1" - -.SH NAME -fprobe-ulog \- a NetFlow probe - -.SH SYNOPSIS -.BI fprobe-ulog -[\fIoptions\fR] \fIremote:port[/[local][/type]] ...\fR - -.SH DESCRIPTION -.B fprobe-ulog -\- libipulog-based tool that collect network traffic data and emit it as -NetFlow flows towards the specified collector. - -.SH OPTIONS -.TP -.B -h -Display short help -.TP -.B -U \fI\fR -ULOG group bitwise mask. [default=1] -.TP -.B -s \fI\fR -How often scan for expired flows. [default=5] -.TP -.B -g \fI\fR -Fragmented flow lifetime. [default=30] -.TP -.B -d \fI\fR -Idle flow lifetime (inactive timer). [default=60] -.TP -.B -e \fI\fR -Active flow lifetime (active timer). [default=300] -.TP -.B -n \fI\fR -NetFlow version for use (1, 5, 7). [default=5] -.TP -.B -a \fI
\fR -Use \fIaddress\fR as source for NetFlow flow. -.TP -.B -X \fI\fR -Comma separated list of interface name to SNMP-index conversion rules. -Each \fIrule\fR consists of \fIinterface base name\fR and \fISNMP-index -base\fR separated by colon (e.g. ppp:200). Final SNMP-index is sum of -corresponding \fISNMP-index base\fR and \fIinterface number\fR. -.br -In the above example SNMP-index of interface ppp11 is 211. -.br - -If interface name did not fit to any of conversion rules then SNMP-index -will be taken from kernel. -.TP -.B -M -Use the netfilter mark as Type Of Service value. -.TP -.B -b \fI\fR -Memory bulk size. [default=200 or 10000] -.br -Note that maximum and default values depends on compiling options -(\fI--with-membulk\fR parameter). -.TP -.B -m \fI\fR -Memory limit for flows cache (0=no limit). [default=0] -.TP -.B -q \fI\fR -Pending queue length. [default=100] -.br -Each captured packet at first puts into special buffer called `pending -queue'. Purpose of this buffer is to separate most time-critical packet -capture thread from other. -.TP -.B -B \fI\fR -Kernel capture buffer size (0=don't change). [default=0] -.br -Increase kernel capture buffer size is most adequate way to prevent -packets loss. -.br -Note that maximum allowed size of the buffer in Linux limited and -generally relatively small, so it should need to change the maximum: -sysctl -w net/core/rmem_max=4194304 -.TP -.B -r \fI\fR -Real-time priority (0=disabled). [default=0] -.br -If parameter greater then zero \fBfprobe-ulog\fR will use real-time scheduling -policy to prevent packets loss. Note that possible values for this -option depends on operating system. -.TP -.B -t \fI\fR -Emitting rate limit (0:0=no limit). [default=0:0] -.br -Produce \fIN\fR nanosecond delay after each \fIB\fR bytes sent. This -option may be useful with slow interfaces and slow collectors. Note that -the suspension time may be longer than requested because the argument -value is rounded up to an integer multiple of the sleep resolution (it -depends on operating system and hardware) or because of the scheduling -of other activity by the system. -.br -See BUGS section. -.TP -.B -c \fI\fR -Directory to chroot to. -.TP -.B -u \fI\fR -User to run as. -.TP -.B -v \fI\fR -Maximum displayed log level. (0=EMERG, 1=ALERT, 2=CRIT, 3=ERR, 4=WARNING, -5=NOTICE, 6=INFO, 7=DEBUG) [default=6] -.TP -.B -l \fI<[dst][:id]>\fR -Log destination (0=none, 1=syslog, 2=stdout, 3=both) and log/pidfile -identifier. [default=1] -.br -This option allows to select opportune log destination and process -identifier. The identifier helps to distinguish pidfile and logs of one -\fBfprobe-ulog\fR process from other. -.br -Note that if log destination contains `\fIstdout\fR' (equal 2 or 3) -\fBfprobe-ulog\fR will run in foreground. -.TP -.B remote:port/local/type -Parameters \fIremote\fR and \fIport\fR are respectively define address -and port of the NetFlow collector. -.br -The \fIlocal\fR parameter allows binding certain local IP address with -specified collector. If the parameter is omitted the value (if any) of -\fI-a\fR option will be used. -.br -The \fItype\fR parameter determines emitting behavior. It may be `m' for -mirroring (by default) and `r' for collectors round-robin rotating. -.br -You may specify multiple collectors. - -.SH EXAMPLES -\fBfprobe-ulog -Xeth:100,ppp:200 localhost:2055\fR - -Reasonable configuration to run under heavy load: -.br -\fBfprobe-ulog -B4096 -r2 -q10000 -t10000:10000000 localhost:2055\fR - -Send packets to collector at 10.1.1.1:2055 and distribute them between -collectors at 10.1.1.2:2055 and at 10.1.1.3:2055 on a round-robin basis: -.br -\fBfprobe-ulog 10.1.1.1:2055 10.1.1.2:2055//r 10.1.1.3:2055//r\fR - -.SH BUGS -.B Slow interfaces and slow collectors. -.br -There are may be problems with slow interfaces and slow collectors. It -effects as emitted packets loss. On the one hand silent non-blocking -sendto() implementation can't guarantee that packet was really sent to -collector - it may be dropped by kernel due to outgoing buffer shortage -(slow interface's problem) and on the other hand packet may be dropped -on collector's machine due the similar reason - incoming buffer shortage -(slow collector's problem). -.br -Use \fI-t\fR option as workaround for this issue. - -.B Locally originated packets and their timestamps. -.br -Locally originated packets does not contains valid timestamps. Therefore -\fBfprobe-ulog\fR fill timestamp by itself on act of receive such -packet. Unfortunately, between capturing packet by netfilter code and -receiving it by \fBfprobe-ulog\fR may occur certain lags, thus -timestamps of locally originated packets generally inexact. -.br -It is possible to fix this problem entirely by trivial kernel patch (see -contrib/ipt_ULOG.patch). - -.SH SEE ALSO -.BR iptables(8) -.br -.BR http://freshmeat.net/projects/ulogd -.br -.BR http://www.cisco.com/go/netflow diff --git a/trunk/src/fprobe-ulog.c b/trunk/src/fprobe-ulog.c deleted file mode 100644 index db63d9c..0000000 --- a/trunk/src/fprobe-ulog.c +++ /dev/null @@ -1,1543 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: fprobe-ulog.c,v 1.1.2.4 2005/01/30 09:06:19 sla Exp $ -*/ - -#include - -/* stdout, stderr, freopen() */ -#include - -/* atoi(), exit() */ -#include - -/* getopt(), alarm(), getpid(), sedsid(), chdir() */ -#include - -/* strerror() */ -#include - -/* sig*() */ -#include - -#include -struct ipulog_handle { - int fd; - u_int8_t blocking; - struct sockaddr_nl local; - struct sockaddr_nl peer; - struct nlmsghdr* last_nlhdr; -}; - -/* inet_*() (Linux, FreeBSD, Solaris), getpid() */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#ifdef OS_LINUX -#include -#endif - -/* pthread_*() */ -#include - -/* errno */ -#include - -/* getaddrinfo() */ -#include - -/* nanosleep() */ -#include - -/* gettimeofday() */ -#include - -/* scheduling */ -#include - -/* select() (POSIX)*/ -#include - -/* open() */ -#include -#include - -#include -#include -#include -#include -#include -#include - -enum { - aflag, - Bflag, - bflag, - cflag, - dflag, - eflag, - fflag, - gflag, - hflag, - lflag, - mflag, - Mflag, - nflag, - qflag, - rflag, - sflag, - tflag, - Uflag, - uflag, - vflag, - Xflag, -}; - -static struct getopt_parms parms[] = { - {'a', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'B', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'b', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'c', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'d', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'e', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'f', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'g', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'h', 0, 0, 0}, - {'l', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'m', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'M', 0, 0, 0}, - {'n', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'q', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'r', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'s', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'t', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'U', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'u', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'v', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'X', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {0, 0, 0, 0} -}; - -extern char *optarg; -extern int optind, opterr, optopt; -extern int errno; - -extern struct NetFlow NetFlow1; -extern struct NetFlow NetFlow5; -extern struct NetFlow NetFlow7; - -#define mark_is_tos parms[Mflag].count -static unsigned scan_interval = 5; -static int frag_lifetime = 30; -static int inactive_lifetime = 60; -static int active_lifetime = 300; -static int sockbufsize; -#define BULK_QUANTITY_MAX (unsigned)(mem_index_t)(-1) -#if (MEM_BITS == 0) || (MEM_BITS == 16) -#define BULK_QUANTITY 10000 -#else -#define BULK_QUANTITY 200 -#endif -static unsigned bulk_quantity = BULK_QUANTITY; -static unsigned pending_queue_length = 100; -static struct NetFlow *netflow = &NetFlow5; -static unsigned verbosity = 6; -static unsigned log_dest = MY_LOG_SYSLOG; -static struct Time start_time; -static long start_time_offset; -static int off_tl; -/* From mem.c */ -extern unsigned total_elements; -extern unsigned free_elements; -extern unsigned total_memory; -#if ((DEBUG) & DEBUG_I) -static unsigned emit_pkts, emit_queue; -static uint64_t size_total; -static unsigned pkts_total, pkts_total_fragmented; -static unsigned pkts_ignored, pkts_lost_capture, pkts_lost_unpending; -static unsigned pkts_pending, pkts_pending_done; -static unsigned pending_queue_trace, pending_queue_trace_candidate; -static unsigned flows_total, flows_fragmented; -#endif -static unsigned emit_count; -static uint32_t emit_sequence; -static unsigned emit_rate_bytes, emit_rate_delay; -static struct Time emit_time; -static uint8_t emit_packet[NETFLOW_MAX_PACKET]; -static pthread_t thid; -static sigset_t sig_mask; -static struct sched_param schedp; -static int sched_min, sched_max; -static int npeers, npeers_rot; -static struct peer *peers; -static int sigs; - -static struct Flow *flows[1 << HASH_BITS]; -static pthread_mutex_t flows_mutex[1 << HASH_BITS]; - -static pthread_mutex_t unpending_mutex = PTHREAD_MUTEX_INITIALIZER; -static pthread_cond_t unpending_cond = PTHREAD_COND_INITIALIZER; - -static pthread_mutex_t scan_mutex = PTHREAD_MUTEX_INITIALIZER; -static pthread_cond_t scan_cond = PTHREAD_COND_INITIALIZER; -static struct Flow *pending_head, *pending_tail; -static struct Flow *scan_frag_dreg; - -static pthread_mutex_t emit_mutex = PTHREAD_MUTEX_INITIALIZER; -static pthread_cond_t emit_cond = PTHREAD_COND_INITIALIZER; -static struct Flow *flows_emit; - -static char ident[256] = "fprobe-ulog"; -static FILE *pidfile; -static char *pidfilepath; -static pid_t pid; -static int killed; -static int emit_timeout = EMIT_TIMEOUT, unpending_timeout = UNPENDING_TIMEOUT; -static struct ipulog_handle *ulog_handle; -static uint32_t ulog_gmask = 1; -static char *cap_buf; -static int nsnmp_rules; -static struct snmp_rule *snmp_rules; -static struct passwd *pw = 0; - -void usage() -{ - fprintf(stdout, - "fprobe-ulog: a NetFlow probe. Version %s\n" - "Usage: fprobe-ulog [options] remote:port[/[local][/type]] ...\n" - "\n" - "-h\t\tDisplay this help\n" - "-U \tULOG group bitwise mask [1]\n" - "-s \tHow often scan for expired flows [5]\n" - "-g \tFragmented flow lifetime [30]\n" - "-d \tIdle flow lifetime (inactive timer) [60]\n" - "-e \tActive flow lifetime (active timer) [300]\n" - "-n \tNetFlow version for use (1, 5 or 7) [5]\n" - "-a
\tUse
as source for NetFlow flow\n" - "-X \tInterface name to SNMP-index conversion rules\n" - "-M\t\tUse netfilter mark value as ToS flag\n" - "-b \tMemory bulk size (1..%u) [%u]\n" - "-m \tMemory limit (0=no limit) [0]\n" - "-q \tPending queue length [100]\n" - "-B \tKernel capture buffer size [0]\n" - "-r \tReal-time priority (0=disabled, %d..%d) [0]\n" - "-t \tProduce nanosecond delay after each bytes sent [0:0]\n" - "-c \tDirectory to chroot to\n" - "-u \tUser to run as\n" - "-v \tMaximum log level (0=EMERG, ..., 6=INFO, 7=DEBUG) [6]\n" - "-l <[dst][:id]>\tLog destination and log/pidfile idetifier [1]\n" - "-y \tAddress of the NetFlow collector\n", - "-f \tFile to write data into\n" - VERSION, BULK_QUANTITY_MAX, bulk_quantity, sched_min, sched_max); - exit(0); -} - -#if ((DEBUG) & DEBUG_I) -void info_debug() -{ - my_log(LOG_DEBUG, "I: received:%d/%d (%lld) pending:%d/%d", - pkts_total, pkts_total_fragmented, size_total, - pkts_pending - pkts_pending_done, pending_queue_trace); - my_log(LOG_DEBUG, "I: ignored:%d lost:%d+%d", - pkts_ignored, pkts_lost_capture, pkts_lost_unpending); - my_log(LOG_DEBUG, "I: cache:%d/%d emit:%d/%d/%d", - flows_total, flows_fragmented, emit_sequence, emit_pkts, emit_queue); - my_log(LOG_DEBUG, "I: memory:%d/%d (%d)", - total_elements, free_elements, total_memory); -} -#endif - -void sighandler(int sig) -{ - switch (sig) { - case SIGTERM: - sigs |= SIGTERM_MASK; - break; -#if ((DEBUG) & DEBUG_I) - case SIGUSR1: - sigs |= SIGUSR1_MASK; - break; -#endif - } -} - -void gettime(struct Time *now) -{ - struct timeval t; - - gettimeofday(&t, 0); - now->sec = t.tv_sec; - now->usec = t.tv_usec; -} - -inline time_t cmpmtime(struct Time *t1, struct Time *t2) -{ - return (t1->sec - t2->sec) * 1000 + (t1->usec - t2->usec) / 1000; -} - -/* Uptime in miliseconds */ -uint32_t getuptime(struct Time *t) -{ - /* Maximum uptime is about 49/2 days */ - return cmpmtime(t, &start_time); -} - -hash_t hash_flow(struct Flow *flow) -{ - if (flow->flags & FLOW_FRAG) return hash(flow, sizeof(struct Flow_F)); - else return hash(flow, sizeof(struct Flow_TL)); -} - -uint16_t snmp_index(char *name) { - uint32_t i; - - if (!*name) return 0; - - for (i = 0; (int) i < nsnmp_rules; i++) { - if (strncmp(snmp_rules[i].basename, name, snmp_rules[i].len)) continue; - return atoi(&name[snmp_rules[i].len]) + snmp_rules[i].base; - } - - if ((i = if_nametoindex(name))) return i; - - return -1; -} - -inline void copy_flow(struct Flow *src, struct Flow *dst) -{ - dst->iif = src->iif; - dst->oif = src->oif; - dst->sip = src->sip; - dst->dip = src->dip; - dst->tos = src->tos; - dst->proto = src->proto; - dst->tcp_flags = src->tcp_flags; - dst->id = src->id; - dst->sp = src->sp; - dst->dp = src->dp; - dst->pkts = src->pkts; - dst->size = src->size; - dst->sizeF = src->sizeF; - dst->sizeP = src->sizeP; - dst->ctime = src->ctime; - dst->mtime = src->mtime; - dst->flags = src->flags; -} - -struct Flow *find(struct Flow *where, struct Flow *what, struct Flow ***prev) -{ - struct Flow **flowpp; - -#ifdef WALL - flowpp = 0; -#endif - - if (prev) flowpp = *prev; - - while (where) { - if (where->sip.s_addr == what->sip.s_addr - && where->dip.s_addr == what->dip.s_addr - && where->proto == what->proto) { - switch ((what->flags + where->flags) & FLOW_FRAGMASK) { - case 0: - /* Both unfragmented */ - if ((what->sp == where->sp) - && (what->dp == where->dp)) goto done; - break; - case 2: - /* Both fragmented */ - if (where->id == what->id) goto done; - break; - } - } - flowpp = &where->next; - where = where->next; - } -done: - if (prev) *prev = flowpp; - return where; -} - -int put_into(struct Flow *flow, int flag -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - , char *logbuf -#endif -) -{ - int ret = 0; - hash_t h; - struct Flow *flown, **flowpp; -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - char buf[64]; -#endif - - h = hash_flow(flow); -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - sprintf(buf, " %x H:%04x", (unsigned) flow, h); - strcat(logbuf, buf); -#endif - pthread_mutex_lock(&flows_mutex[h]); - flowpp = &flows[h]; - if (!(flown = find(flows[h], flow, &flowpp))) { - /* No suitable flow found - add */ - if (flag == COPY_INTO) { - if ((flown = mem_alloc())) { - copy_flow(flow, flown); - flow = flown; - } else { -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) || defined MESSAGES - my_log(LOG_ERR, "%s %s. %s", - "mem_alloc():", strerror(errno), "packet lost"); -#endif - return -1; - } - } - flow->next = flows[h]; - flows[h] = flow; -#if ((DEBUG) & DEBUG_I) - flows_total++; - if (flow->flags & FLOW_FRAG) flows_fragmented++; -#endif -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - if (flown) { - sprintf(buf, " => %x, flags: %x", (unsigned) flown, flown->flags); - strcat(logbuf, buf); - } -#endif - } else { - /* Found suitable flow - update */ -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - sprintf(buf, " +> %x", (unsigned) flown); - strcat(logbuf, buf); -#endif - if (cmpmtime(&flow->mtime, &flown->mtime) > 0) - flown->mtime = flow->mtime; - if (cmpmtime(&flow->ctime, &flown->ctime) < 0) - flown->ctime = flow->ctime; - flown->tcp_flags |= flow->tcp_flags; - flown->size += flow->size; - flown->pkts += flow->pkts; - if (flow->flags & FLOW_FRAG) { - /* Fragmented flow require some additional work */ - if (flow->flags & FLOW_TL) { - /* - ?FIXME? - Several packets with FLOW_TL (attack) - */ - flown->sp = flow->sp; - flown->dp = flow->dp; - } - if (flow->flags & FLOW_LASTFRAG) { - /* - ?FIXME? - Several packets with FLOW_LASTFRAG (attack) - */ - flown->sizeP = flow->sizeP; - } - flown->flags |= flow->flags; - flown->sizeF += flow->sizeF; - if ((flown->flags & FLOW_LASTFRAG) - && (flown->sizeF >= flown->sizeP)) { - /* All fragments received - flow reassembled */ - *flowpp = flown->next; - pthread_mutex_unlock(&flows_mutex[h]); -#if ((DEBUG) & DEBUG_I) - flows_total--; - flows_fragmented--; -#endif - flown->id = 0; - flown->flags &= ~FLOW_FRAG; -#if ((DEBUG) & (DEBUG_U | DEBUG_S)) - strcat(logbuf," R"); -#endif - ret = put_into(flown, MOVE_INTO -#if ((DEBUG) & (DEBUG_U | DEBUG_S)) - , logbuf -#endif - ); - } - } - if (flag == MOVE_INTO) mem_free(flow); - } - pthread_mutex_unlock(&flows_mutex[h]); - return ret; -} - -void *fill(int fields, uint16_t *format, struct Flow *flow, void *p) -{ - int i; - - for (i = 0; i < fields; i++) { -#if ((DEBUG) & DEBUG_F) - my_log(LOG_DEBUG, "F: field %04d at %x", format[i], (unsigned) p); -#endif - switch (format[i]) { - case NETFLOW_IPV4_SRC_ADDR: - ((struct in_addr *) p)->s_addr = flow->sip.s_addr; - p += NETFLOW_IPV4_SRC_ADDR_SIZE; - break; - - case NETFLOW_IPV4_DST_ADDR: - ((struct in_addr *) p)->s_addr = flow->dip.s_addr; - p += NETFLOW_IPV4_DST_ADDR_SIZE; - break; - - case NETFLOW_INPUT_SNMP: - *((uint16_t *) p) = htons(flow->iif); - p += NETFLOW_INPUT_SNMP_SIZE; - break; - - case NETFLOW_OUTPUT_SNMP: - *((uint16_t *) p) = htons(flow->oif); - p += NETFLOW_OUTPUT_SNMP_SIZE; - break; - - case NETFLOW_PKTS_32: - *((uint32_t *) p) = htonl(flow->pkts); - p += NETFLOW_PKTS_32_SIZE; - break; - - case NETFLOW_BYTES_32: - *((uint32_t *) p) = htonl(flow->size); - p += NETFLOW_BYTES_32_SIZE; - break; - - case NETFLOW_FIRST_SWITCHED: - *((uint32_t *) p) = htonl(getuptime(&flow->ctime)); - p += NETFLOW_FIRST_SWITCHED_SIZE; - break; - - case NETFLOW_LAST_SWITCHED: - *((uint32_t *) p) = htonl(getuptime(&flow->mtime)); - p += NETFLOW_LAST_SWITCHED_SIZE; - break; - - case NETFLOW_L4_SRC_PORT: - *((uint16_t *) p) = flow->sp; - p += NETFLOW_L4_SRC_PORT_SIZE; - break; - - case NETFLOW_L4_DST_PORT: - *((uint16_t *) p) = flow->dp; - p += NETFLOW_L4_DST_PORT_SIZE; - break; - - case NETFLOW_PROT: - *((uint8_t *) p) = flow->proto; - p += NETFLOW_PROT_SIZE; - break; - - case NETFLOW_SRC_TOS: - *((uint8_t *) p) = flow->tos; - p += NETFLOW_SRC_TOS_SIZE; - break; - - case NETFLOW_TCP_FLAGS: - *((uint8_t *) p) = flow->tcp_flags; - p += NETFLOW_TCP_FLAGS_SIZE; - break; - - case NETFLOW_VERSION: - *((uint16_t *) p) = htons(netflow->Version); - p += NETFLOW_VERSION_SIZE; - break; - - case NETFLOW_COUNT: - *((uint16_t *) p) = htons(emit_count); - p += NETFLOW_COUNT_SIZE; - break; - - case NETFLOW_UPTIME: - *((uint32_t *) p) = htonl(getuptime(&emit_time)); - p += NETFLOW_UPTIME_SIZE; - break; - - case NETFLOW_UNIX_SECS: - *((uint32_t *) p) = htonl(emit_time.sec); - p += NETFLOW_UNIX_SECS_SIZE; - break; - - case NETFLOW_UNIX_NSECS: - *((uint32_t *) p) = htonl(emit_time.usec * 1000); - p += NETFLOW_UNIX_NSECS_SIZE; - break; - - case NETFLOW_FLOW_SEQUENCE: - //*((uint32_t *) p) = htonl(emit_sequence); - *((uint32_t *) p) = 0; - p += NETFLOW_FLOW_SEQUENCE_SIZE; - break; - - case NETFLOW_PAD8: - /* Unsupported (uint8_t) */ - case NETFLOW_ENGINE_TYPE: - case NETFLOW_ENGINE_ID: - case NETFLOW_FLAGS7_1: - case NETFLOW_SRC_MASK: - case NETFLOW_DST_MASK: - *((uint8_t *) p) = 0; - p += NETFLOW_PAD8_SIZE; - break; - - case NETFLOW_PAD16: - /* Unsupported (uint16_t) */ - case NETFLOW_SRC_AS: - case NETFLOW_DST_AS: - case NETFLOW_FLAGS7_2: - *((uint16_t *) p) = 0; - p += NETFLOW_PAD16_SIZE; - break; - - case NETFLOW_PAD32: - /* Unsupported (uint32_t) */ - case NETFLOW_IPV4_NEXT_HOP: - case NETFLOW_ROUTER_SC: - *((uint32_t *) p) = 0; - p += NETFLOW_PAD32_SIZE; - break; - - default: - my_log(LOG_CRIT, "fill(): Unknown format at %x[%d]: %d", - format, i, format[i]); - exit(1); - } - } -#if ((DEBUG) & DEBUG_F) - my_log(LOG_DEBUG, "F: return %x", (unsigned) p); -#endif - return p; -} - -void setuser() { - /* - Workaround for clone()-based threads - Try to change EUID independently of main thread - */ - if (pw) { - setgroups(0, NULL); - setregid(pw->pw_gid, pw->pw_gid); - setreuid(pw->pw_uid, pw->pw_uid); - } -} - -void *emit_thread() -{ - struct Flow *flow; - void *p; - struct timeval now; - struct timespec timeout; - int i, ret, sent = 0, size, delay, peer_rot_cur, peer_rot_work = 0; - - p = (void *) &emit_packet + netflow->HeaderSize; - timeout.tv_nsec = 0; - - setuser(); - - for (;;) { - pthread_mutex_lock(&emit_mutex); - while (!flows_emit) { - gettimeofday(&now, 0); - timeout.tv_sec = now.tv_sec + emit_timeout; - /* Do not wait until emit_packet will filled - it may be too long */ - if (pthread_cond_timedwait(&emit_cond, &emit_mutex, &timeout) && emit_count) { - pthread_mutex_unlock(&emit_mutex); - goto sendit; - } - } - flow = flows_emit; - flows_emit = flows_emit->next; -#if ((DEBUG) & DEBUG_I) - emit_queue--; -#endif - pthread_mutex_unlock(&emit_mutex); - -#ifdef UPTIME_TRICK - if (!emit_count) { - gettime(&start_time); - start_time.sec -= start_time_offset; - } -#endif - p = fill(netflow->FlowFields, netflow->FlowFormat, flow, p); - mem_free(flow); - emit_count++; - if (emit_count == netflow->MaxFlows) { - sendit: - gettime(&emit_time); - p = fill(netflow->HeaderFields, netflow->HeaderFormat, 0, &emit_packet); - size = netflow->HeaderSize + emit_count * netflow->FlowSize; - peer_rot_cur = 0; - for (i = 0; i < npeers; i++) { - if (peers[i].type == PEER_FILE) { - printf( "Here\n"); - if (netflow->SeqOffset) - *((uint32_t *) (emit_packet + netflow->SeqOffset)) = htonl(peers[i].seq); -#define MESSAGES - ret = write(peers[i].write_fd, emit_packet, size); - if (ret < size) { -#if ((DEBUG) & DEBUG_E) || defined MESSAGES - my_log(LOG_ERR, "write(to #%d, seq %d, flows %d, size %d) == %d: %s", - i + 1, peers[i].seq, emit_count, size, ret, strerror(errno)); -#endif -#undef MESSAGES - } -#if ((DEBUG) & DEBUG_E) - commaneelse { - my_log(LOG_DEBUG, "E: Emitted %d flow(s) to #%d, seq %d", - emit_count, i + 1, peers[i].seq); - } -#endif - peers[i].seq += emit_count; - - /* Rate limit */ - if (emit_rate_bytes) { - sent += size; - delay = sent / emit_rate_bytes; - if (delay) { - sent %= emit_rate_bytes; - timeout.tv_sec = 0; - timeout.tv_nsec = emit_rate_delay * delay; - while (nanosleep(&timeout, &timeout) == -1 && errno == EINTR); - } - } - } - else - if (peers[i].type == PEER_MIRROR) goto sendreal; - else - if (peers[i].type == PEER_ROTATE) - if (peer_rot_cur++ == peer_rot_work) { - sendreal: - if (netflow->SeqOffset) - *((uint32_t *) (emit_packet + netflow->SeqOffset)) = htonl(peers[i].seq); - ret = send(peers[i].write_fd, emit_packet, size, 0); - if (ret < size) { -#if ((DEBUG) & DEBUG_E) || defined MESSAGES - my_log(LOG_ERR, "send(to #%d, seq %d, flows %d, size %d) == %d: %s", - i + 1, peers[i].seq, emit_count, size, ret, strerror(errno)); -#endif - } -#if ((DEBUG) & DEBUG_E) - commaneelse { - my_log(LOG_DEBUG, "E: Emitted %d flow(s) to #%d, seq %d", - emit_count, i + 1, peers[i].seq); - } -#endif - peers[i].seq += emit_count; - - /* Rate limit */ - if (emit_rate_bytes) { - sent += size; - delay = sent / emit_rate_bytes; - if (delay) { - sent %= emit_rate_bytes; - timeout.tv_sec = 0; - timeout.tv_nsec = emit_rate_delay * delay; - while (nanosleep(&timeout, &timeout) == -1 && errno == EINTR); - } - } - } - } - if (npeers_rot) peer_rot_work = (peer_rot_work + 1) % npeers_rot; - emit_sequence += emit_count; - emit_count = 0; -#if ((DEBUG) & DEBUG_I) - emit_pkts++; -#endif - } - } -} - -void *unpending_thread() -{ - struct timeval now; - struct timespec timeout; -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - char logbuf[256]; -#endif - - setuser(); - - timeout.tv_nsec = 0; - pthread_mutex_lock(&unpending_mutex); - - for (;;) { - while (!(pending_tail->flags & FLOW_PENDING)) { - gettimeofday(&now, 0); - timeout.tv_sec = now.tv_sec + unpending_timeout; - pthread_cond_timedwait(&unpending_cond, &unpending_mutex, &timeout); - } - -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - *logbuf = 0; -#endif - if (put_into(pending_tail, COPY_INTO -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - , logbuf -#endif - ) < 0) { -#if ((DEBUG) & DEBUG_I) - pkts_lost_unpending++; -#endif - } - -#if ((DEBUG) & DEBUG_U) - my_log(LOG_DEBUG, "%s%s", "U:", logbuf); -#endif - - pending_tail->flags = 0; - pending_tail = pending_tail->next; -#if ((DEBUG) & DEBUG_I) - pkts_pending_done++; -#endif - } -} - -void *scan_thread() -{ -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - char logbuf[256]; -#endif - int i; - struct Flow *flow, **flowpp; - struct Time now; - struct timespec timeout; - - setuser(); - - timeout.tv_nsec = 0; - pthread_mutex_lock(&scan_mutex); - - for (;;) { - gettime(&now); - timeout.tv_sec = now.sec + scan_interval; - pthread_cond_timedwait(&scan_cond, &scan_mutex, &timeout); - - gettime(&now); -#if ((DEBUG) & DEBUG_S) - my_log(LOG_DEBUG, "S: %d", now.sec); -#endif - for (i = 0; i < 1 << HASH_BITS ; i++) { - pthread_mutex_lock(&flows_mutex[i]); - flow = flows[i]; - flowpp = &flows[i]; - while (flow) { - if (flow->flags & FLOW_FRAG) { - /* Process fragmented flow */ - if ((now.sec - flow->mtime.sec) > frag_lifetime) { - /* Fragmented flow expired - put it into special chain */ -#if ((DEBUG) & DEBUG_I) - flows_fragmented--; - flows_total--; -#endif - *flowpp = flow->next; - flow->id = 0; - flow->flags &= ~FLOW_FRAG; - flow->next = scan_frag_dreg; - scan_frag_dreg = flow; - flow = *flowpp; - continue; - } - } else { - /* Flow is not frgamented */ - if ((now.sec - flow->mtime.sec) > inactive_lifetime - || (flow->mtime.sec - flow->ctime.sec) > active_lifetime) { - /* Flow expired */ -#if ((DEBUG) & DEBUG_S) - my_log(LOG_DEBUG, "S: E %x", flow); -#endif -#if ((DEBUG) & DEBUG_I) - flows_total--; -#endif - *flowpp = flow->next; - pthread_mutex_lock(&emit_mutex); - flow->next = flows_emit; - flows_emit = flow; -#if ((DEBUG) & DEBUG_I) - emit_queue++; -#endif - pthread_mutex_unlock(&emit_mutex); - flow = *flowpp; - continue; - } - } - flowpp = &flow->next; - flow = flow->next; - } /* chain loop */ - pthread_mutex_unlock(&flows_mutex[i]); - } /* hash loop */ - if (flows_emit) pthread_cond_signal(&emit_cond); - - while (scan_frag_dreg) { - flow = scan_frag_dreg; - scan_frag_dreg = flow->next; -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - *logbuf = 0; -#endif - put_into(flow, MOVE_INTO -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - , logbuf -#endif - ); -#if ((DEBUG) & DEBUG_S) - my_log(LOG_DEBUG, "%s%s", "S: FE", logbuf); -#endif - } - } -} - -void *cap_thread() -{ - struct ulog_packet_msg *ulog_msg; - struct ip *nl; - void *tl; - struct Flow *flow; - int len, off_frag, psize; -#if ((DEBUG) & DEBUG_C) - char buf[64]; - char logbuf[256]; -#endif - - setuser(); - - while (!killed) { - len = ipulog_read(ulog_handle, cap_buf, CAPTURE_SIZE, 1); - if (len <= 0) { - my_log(LOG_ERR, "ipulog_read(): %s", ipulog_strerror(ipulog_errno)); - continue; - } - while ((ulog_msg = ipulog_get_packet(ulog_handle, cap_buf, len))) { - -#if ((DEBUG) & DEBUG_C) - sprintf(logbuf, "C: %d", ulog_msg->data_len); -#endif - - nl = (void *) &ulog_msg->payload; - psize = ulog_msg->data_len; - - /* Sanity check */ - if (psize < (signed) sizeof(struct ip) || nl->ip_v != 4) { -#if ((DEBUG) & DEBUG_C) - strcat(logbuf, " U"); - my_log(LOG_DEBUG, "%s", logbuf); -#endif -#if ((DEBUG) & DEBUG_I) - pkts_ignored++; -#endif - continue; - } - - if (pending_head->flags) { -#if ((DEBUG) & DEBUG_C) || defined MESSAGES - my_log(LOG_ERR, -# if ((DEBUG) & DEBUG_C) - "%s %s %s", logbuf, -# else - "%s %s", -# endif - "pending queue full:", "packet lost"); -#endif -#if ((DEBUG) & DEBUG_I) - pkts_lost_capture++; -#endif - goto done; - } - -#if ((DEBUG) & DEBUG_I) - pkts_total++; -#endif - - flow = pending_head; - - /* ?FIXME? Add sanity check for ip_len? */ - flow->size = ntohs(nl->ip_len); -#if ((DEBUG) & DEBUG_I) - size_total += flow->size; -#endif - - flow->sip = nl->ip_src; - flow->dip = nl->ip_dst; - flow->iif = snmp_index(ulog_msg->indev_name); - flow->oif = snmp_index(ulog_msg->outdev_name); - flow->tos = mark_is_tos ? ulog_msg->mark : nl->ip_tos; - flow->proto = nl->ip_p; - flow->id = 0; - flow->tcp_flags = 0; - flow->pkts = 1; - flow->sizeF = 0; - flow->sizeP = 0; - /* Packets captured from OUTPUT table didn't contains valid timestamp */ - if (ulog_msg->timestamp_sec) { - flow->ctime.sec = ulog_msg->timestamp_sec; - flow->ctime.usec = ulog_msg->timestamp_usec; - } else gettime(&flow->ctime); - flow->mtime = flow->ctime; - - off_frag = (ntohs(nl->ip_off) & IP_OFFMASK) << 3; - - /* - Offset (from network layer) to transport layer header/IP data - IOW IP header size ;-) - - ?FIXME? - Check ip_hl for valid value (>=5)? Maybe check CRC? No, thanks... - */ - off_tl = nl->ip_hl << 2; - tl = (void *) nl + off_tl; - - /* THIS packet data size: data_size = total_size - ip_header_size*4 */ - flow->sizeF = ntohs(nl->ip_len) - off_tl; - psize -= off_tl; - if ((signed) flow->sizeF < 0) flow->sizeF = 0; - if (psize > (signed) flow->sizeF) psize = flow->sizeF; - - if (ntohs(nl->ip_off) & (IP_MF | IP_OFFMASK)) { - /* Fragmented packet (IP_MF flag == 1 or fragment offset != 0) */ -#if ((DEBUG) & DEBUG_C) - strcat(logbuf, " F"); -#endif -#if ((DEBUG) & DEBUG_I) - pkts_total_fragmented++; -#endif - flow->flags |= FLOW_FRAG; - flow->id = nl->ip_id; - - if (!(ntohs(nl->ip_off) & IP_MF)) { - /* Packet whith IP_MF contains information about whole datagram size */ - flow->flags |= FLOW_LASTFRAG; - /* size = frag_offset*8 + data_size */ - flow->sizeP = off_frag + flow->sizeF; - } - } - -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " %s@%u>", inet_ntoa(flow->sip), flow->iif); - strcat(logbuf, buf); - sprintf(buf, "%s@%u P:%x", inet_ntoa(flow->dip), flow->oif, flow->proto); - strcat(logbuf, buf); -#endif - - /* - Fortunately most interesting transport layer information fit - into first 8 bytes of IP data field (minimal nonzero size). - Thus we don't need actual packet reassembling to build whole - transport layer data. We only check the fragment offset for - zero value to find packet with this information. - */ - if (!off_frag && psize >= 8) { - switch (flow->proto) { - case IPPROTO_TCP: - case IPPROTO_UDP: - flow->sp = ((struct udphdr *)tl)->uh_sport; - flow->dp = ((struct udphdr *)tl)->uh_dport; - goto tl_known; - -#ifdef ICMP_TRICK - case IPPROTO_ICMP: - flow->sp = htons(((struct icmp *)tl)->icmp_type); - flow->dp = htons(((struct icmp *)tl)->icmp_code); - goto tl_known; -#endif -#ifdef ICMP_TRICK_CISCO - case IPPROTO_ICMP: - flow->dp = *((int32_t *) tl); - goto tl_known; -#endif - - default: - /* Unknown transport layer */ -#if ((DEBUG) & DEBUG_C) - strcat(logbuf, " U"); -#endif - flow->sp = 0; - flow->dp = 0; - break; - - tl_known: -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " %d>%d", ntohs(flow->sp), ntohs(flow->dp)); - strcat(logbuf, buf); -#endif - flow->flags |= FLOW_TL; - } - } - - /* Check for tcp flags presence (including CWR and ECE). */ - if (flow->proto == IPPROTO_TCP - && off_frag < 16 - && psize >= 16 - off_frag) { - flow->tcp_flags = *((uint8_t *)(tl + 13 - off_frag)); -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " TCP:%x", flow->tcp_flags); - strcat(logbuf, buf); -#endif - } - -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " => %x", (unsigned) flow); - strcat(logbuf, buf); - my_log(LOG_DEBUG, "%s", logbuf); -#endif - -#if ((DEBUG) & DEBUG_I) - pkts_pending++; - pending_queue_trace_candidate = pkts_pending - pkts_pending_done; - if (pending_queue_trace < pending_queue_trace_candidate) - pending_queue_trace = pending_queue_trace_candidate; -#endif - - /* Flow complete - inform unpending_thread() about it */ - pending_head->flags |= FLOW_PENDING; - pending_head = pending_head->next; - done: - pthread_cond_signal(&unpending_cond); - } - } - return 0; -} - -int main(int argc, char **argv) -{ - char errpbuf[512]; - char *dhost, *dport, *lhost, *type = 0, *log_suffix = 0, *rule; - int c, i, write_fd, memory_limit = 0; - struct addrinfo hints, *res; - struct sockaddr_in saddr; - pthread_attr_t tattr; - struct sigaction sigact; - static void *threads[THREADS - 1] = {&emit_thread, &scan_thread, &unpending_thread, &cap_thread}; - struct timeval timeout; - - sched_min = sched_get_priority_min(SCHED); - sched_max = sched_get_priority_max(SCHED); - - memset(&saddr, 0 , sizeof(saddr)); - memset(&hints, 0 , sizeof(hints)); - hints.ai_flags = AI_PASSIVE; - hints.ai_family = AF_INET; - hints.ai_socktype = SOCK_DGRAM; - - /* Process command line options */ - - opterr = 0; - while ((c = my_getopt(argc, argv, parms)) != -1) { - switch (c) { - case '?': - usage(); - - case 'h': - usage(); - } - } - - if (parms[Uflag].count) ulog_gmask = atoi(parms[Uflag].arg); - if (parms[sflag].count) scan_interval = atoi(parms[sflag].arg); - if (parms[gflag].count) frag_lifetime = atoi(parms[gflag].arg); - if (parms[dflag].count) inactive_lifetime = atoi(parms[dflag].arg); - if (parms[eflag].count) active_lifetime = atoi(parms[eflag].arg); - if (parms[nflag].count) { - switch (atoi(parms[nflag].arg)) { - case 1: - netflow = &NetFlow1; - break; - - case 5: - break; - - case 7: - netflow = &NetFlow7; - break; - - default: - fprintf(stderr, "Illegal %s\n", "NetFlow version"); - exit(1); - } - } - if (parms[vflag].count) verbosity = atoi(parms[vflag].arg); - if (parms[lflag].count) { - if ((log_suffix = strchr(parms[lflag].arg, ':'))) { - *log_suffix++ = 0; - if (*log_suffix) { - sprintf(errpbuf, "[%s]", log_suffix); - strcat(ident, errpbuf); - } - } - if (*parms[lflag].arg) log_dest = atoi(parms[lflag].arg); - if (log_suffix) *--log_suffix = ':'; - } - if (!(pidfilepath = malloc(sizeof(PID_DIR) + 1 + strlen(ident) + 1 + 3 + 1))) { - err_malloc: - fprintf(stderr, "malloc(): %s\n", strerror(errno)); - exit(1); - } - sprintf(pidfilepath, "%s/%s.pid", PID_DIR, ident); - if (parms[qflag].count) { - pending_queue_length = atoi(parms[qflag].arg); - if (pending_queue_length < 1) { - fprintf(stderr, "Illegal %s\n", "pending queue length"); - exit(1); - } - } - if (parms[rflag].count) { - schedp.sched_priority = atoi(parms[rflag].arg); - if (schedp.sched_priority - && (schedp.sched_priority < sched_min - || schedp.sched_priority > sched_max)) { - fprintf(stderr, "Illegal %s\n", "realtime priority"); - exit(1); - } - } - if (parms[Bflag].count) { - sockbufsize = atoi(parms[Bflag].arg) << 10; - } - if (parms[bflag].count) { - bulk_quantity = atoi(parms[bflag].arg); - if (bulk_quantity < 1 || bulk_quantity > BULK_QUANTITY_MAX) { - fprintf(stderr, "Illegal %s\n", "bulk size"); - exit(1); - } - } - if (parms[mflag].count) memory_limit = atoi(parms[mflag].arg) << 10; - if (parms[Xflag].count) { - for(i = 0; parms[Xflag].arg[i]; i++) - if (parms[Xflag].arg[i] == ':') nsnmp_rules++; - if (!(snmp_rules = malloc(nsnmp_rules * sizeof(struct snmp_rule)))) - goto err_malloc; - rule = strtok(parms[Xflag].arg, ":"); - for (i = 0; rule; i++) { - snmp_rules[i].len = strlen(rule); - if (snmp_rules[i].len > IFNAMSIZ) { - fprintf(stderr, "Illegal %s\n", "interface basename"); - exit(1); - } - strncpy(snmp_rules[i].basename, rule, snmp_rules[i].len); - if (!*(rule - 1)) *(rule - 1) = ','; - rule = strtok(NULL, ","); - if (!rule) { - fprintf(stderr, "Illegal %s\n", "SNMP rule"); - exit(1); - } - snmp_rules[i].base = atoi(rule); - *(rule - 1) = ':'; - rule = strtok(NULL, ":"); - } - nsnmp_rules = i; - } - if (parms[tflag].count) - sscanf(parms[tflag].arg, "%d:%d", &emit_rate_bytes, &emit_rate_delay); - if (parms[aflag].count) { - if (getaddrinfo(parms[aflag].arg, 0, &hints, &res)) { - bad_lhost: - fprintf(stderr, "Illegal %s\n", "source address"); - exit(1); - } else { - saddr = *((struct sockaddr_in *) res->ai_addr); - freeaddrinfo(res); - } - } - if (parms[uflag].count) - if ((pw = getpwnam(parms[uflag].arg)) == NULL) { - fprintf(stderr, "getpwnam(%s): %s\n", parms[uflag].arg, errno ? strerror(errno) : "Unknown user"); - exit(1); - } - - - /* Process collectors parameters. Brrrr... :-[ */ - - npeers = argc - optind; - if (npeers > 1) { - /* Send to remote Netflow collector */ - if (!(peers = malloc(npeers * sizeof(struct peer)))) goto err_malloc; - for (i = optind, npeers = 0; i < argc; i++, npeers++) { - dhost = argv[i]; - if (!(dport = strchr(dhost, ':'))) goto bad_collector; - *dport++ = 0; - if ((write_fd = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { - fprintf(stderr, "socket(): %s\n", strerror(errno)); - exit(1); - } - peers[npeers].write_fd = write_fd; - peers[npeers].type = PEER_MIRROR; - peers[npeers].laddr = saddr; - peers[npeers].seq = 0; - if ((lhost = strchr(dport, '/'))) { - *lhost++ = 0; - if ((type = strchr(lhost, '/'))) { - *type++ = 0; - switch (*type) { - case 0: - case 'm': - break; - - case 'r': - peers[npeers].type = PEER_ROTATE; - npeers_rot++; - break; - - default: - goto bad_collector; - } - } - if (*lhost) { - if (getaddrinfo(lhost, 0, &hints, &res)) goto bad_lhost; - peers[npeers].laddr = *((struct sockaddr_in *) res->ai_addr); - freeaddrinfo(res); - } - } - if (bind(write_fd, (struct sockaddr *) &peers[npeers].laddr, - sizeof(struct sockaddr_in))) { - fprintf(stderr, "bind(): %s\n", strerror(errno)); - exit(1); - } - if (getaddrinfo(dhost, dport, &hints, &res)) { -bad_collector: - fprintf(stderr, "Error in collector #%d parameters\n", npeers + 1); - exit(1); - } - peers[npeers].addr = *((struct sockaddr_in *) res->ai_addr); - freeaddrinfo(res); - if (connect(write_fd, (struct sockaddr *) &peers[npeers].addr, - sizeof(struct sockaddr_in))) { - fprintf(stderr, "connect(): %s\n", strerror(errno)); - exit(1); - } - - /* Restore command line */ - if (type) *--type = '/'; - if (lhost) *--lhost = '/'; - *--dport = ':'; - } - } - else if (parms[fflag].count) { - // log into a file - char *fname; - if (!(peers = malloc(npeers * sizeof(struct peer)))) goto err_malloc; - fname = parms[fflag].arg; - if ((write_fd = open(fname, O_WRONLY|O_CREAT)) < 0) { - fprintf(stderr, "open(): %s (%s)\n", fname, strerror(errno)); - exit(1); - } - peers[0].write_fd = write_fd; - peers[0].type = PEER_FILE; - peers[0].seq = 0; - npeers++; - } - else - usage(); - - - if (!(cap_buf = malloc(CAPTURE_SIZE))) goto err_malloc; - ulog_handle = ipulog_create_handle(ulog_gmask, CAPTURE_SIZE); - if (!ulog_handle) { - fprintf(stderr, "libipulog initialization error: %s", - ipulog_strerror(ipulog_errno)); - exit(1); - } - if (sockbufsize) - if (setsockopt(ulog_handle->fd, SOL_SOCKET, SO_RCVBUF, - &sockbufsize, sizeof(sockbufsize)) < 0) - fprintf(stderr, "setsockopt(): %s", strerror(errno)); - - /* Daemonize (if log destination stdout-free) */ - - my_log_open(ident, verbosity, log_dest); - if (!(log_dest & 2)) { - switch (fork()) { - case -1: - fprintf(stderr, "fork(): %s", strerror(errno)); - exit(1); - - case 0: - setsid(); - freopen("/dev/null", "r", stdin); - freopen("/dev/null", "w", stdout); - freopen("/dev/null", "w", stderr); - break; - - default: - exit(0); - } - } else { - setvbuf(stdout, (char *)0, _IONBF, 0); - setvbuf(stderr, (char *)0, _IONBF, 0); - } - - pid = getpid(); - sprintf(errpbuf, "[%ld]", (long) pid); - strcat(ident, errpbuf); - - /* Initialization */ - - hash_init(); /* Actually for crc16 only */ - mem_init(sizeof(struct Flow), bulk_quantity, memory_limit); - for (i = 0; i < 1 << HASH_BITS; i++) pthread_mutex_init(&flows_mutex[i], 0); - -#ifdef UPTIME_TRICK - /* Hope 12 days is enough :-/ */ - start_time_offset = 1 << 20; - - /* start_time_offset = active_lifetime + inactive_lifetime + scan_interval; */ -#endif - gettime(&start_time); - - /* - Build static pending queue as circular buffer. - */ - if (!(pending_head = mem_alloc())) goto err_mem_alloc; - pending_tail = pending_head; - for (i = pending_queue_length - 1; i--;) { - if (!(pending_tail->next = mem_alloc())) { - err_mem_alloc: - my_log(LOG_CRIT, "mem_alloc(): %s", strerror(errno)); - exit(1); - } - pending_tail = pending_tail->next; - } - pending_tail->next = pending_head; - pending_tail = pending_head; - - sigemptyset(&sig_mask); - sigact.sa_handler = &sighandler; - sigact.sa_mask = sig_mask; - sigact.sa_flags = 0; - sigaddset(&sig_mask, SIGTERM); - sigaction(SIGTERM, &sigact, 0); -#if ((DEBUG) & DEBUG_I) - sigaddset(&sig_mask, SIGUSR1); - sigaction(SIGUSR1, &sigact, 0); -#endif - if (pthread_sigmask(SIG_BLOCK, &sig_mask, 0)) { - my_log(LOG_CRIT, "pthread_sigmask(): %s", strerror(errno)); - exit(1); - } - - my_log(LOG_INFO, "Starting %s...", VERSION); - - if (parms[cflag].count) { - if (chdir(parms[cflag].arg) || chroot(".")) { - my_log(LOG_CRIT, "could not chroot to %s: %s", parms[cflag].arg, strerror(errno)); - exit(1); - } - } - - schedp.sched_priority = schedp.sched_priority - THREADS + 2; - pthread_attr_init(&tattr); - for (i = 0; i < THREADS - 1; i++) { - if (schedp.sched_priority > 0) { - if ((pthread_attr_setschedpolicy(&tattr, SCHED)) || - (pthread_attr_setschedparam(&tattr, &schedp))) { - my_log(LOG_CRIT, "pthread_attr_setschedpolicy(): %s", strerror(errno)); - exit(1); - } - } - if (pthread_create(&thid, &tattr, threads[i], 0)) { - my_log(LOG_CRIT, "pthread_create(): %s", strerror(errno)); - exit(1); - } - pthread_detach(thid); - schedp.sched_priority++; - } - - if (pw) { - if (setgroups(0, NULL)) { - my_log(LOG_CRIT, "setgroups(): %s", strerror(errno)); - exit(1); - } - if (setregid(pw->pw_gid, pw->pw_gid)) { - my_log(LOG_CRIT, "setregid(%u): %s", pw->pw_gid, strerror(errno)); - exit(1); - } - if (setreuid(pw->pw_uid, pw->pw_uid)) { - my_log(LOG_CRIT, "setreuid(%u): %s", pw->pw_uid, strerror(errno)); - exit(1); - } - } - - if (!(pidfile = fopen(pidfilepath, "w"))) - my_log(LOG_ERR, "Can't create pid file. fopen(): %s", strerror(errno)); - else { - fprintf(pidfile, "%ld\n", (long) pid); - fclose(pidfile); - } - - my_log(LOG_INFO, "pid: %d", pid); - my_log(LOG_INFO, "options: u=%u s=%u g=%u d=%u e=%u n=%u a=%s " - "M=%d b=%u m=%u q=%u B=%u r=%u t=%u:%u c=%s u=%s v=%u l=%u%s", - ulog_gmask, scan_interval, frag_lifetime, inactive_lifetime, active_lifetime, - netflow->Version, inet_ntoa(saddr.sin_addr), mark_is_tos, bulk_quantity, - memory_limit >> 10, pending_queue_length, sockbufsize >> 10, schedp.sched_priority - 1, - emit_rate_bytes, emit_rate_delay, parms[cflag].count ? parms[cflag].arg : "", - parms[uflag].count ? parms[uflag].arg : "", verbosity, log_dest, log_suffix ? log_suffix : ""); - for (i = 0; i < nsnmp_rules; i++) { - my_log(LOG_INFO, "SNMP rule #%d %s:%d", - i + 1, snmp_rules[i].basename, snmp_rules[i].base); - } - for (i = 0; i < npeers; i++) { - switch (peers[i].type) { - case PEER_MIRROR: - c = 'm'; - break; - case PEER_ROTATE: - c = 'r'; - break; - } - snprintf(errpbuf, sizeof(errpbuf), "%s", inet_ntoa(peers[i].laddr.sin_addr)); - my_log(LOG_INFO,"collector #%d: %s:%u/%s/%c", i + 1, - inet_ntoa(peers[i].addr.sin_addr), ntohs(peers[i].addr.sin_port), errpbuf, c); - } - - pthread_sigmask(SIG_UNBLOCK, &sig_mask, 0); - - timeout.tv_usec = 0; - while (!killed - || (total_elements - free_elements - pending_queue_length) - || emit_count - || pending_tail->flags) { - - if (!sigs) { - timeout.tv_sec = scan_interval; - select(0, 0, 0, 0, &timeout); - } - - if (sigs & SIGTERM_MASK && !killed) { - sigs &= ~SIGTERM_MASK; - my_log(LOG_INFO, "SIGTERM received. Emitting flows cache..."); - scan_interval = 1; - frag_lifetime = -1; - active_lifetime = -1; - inactive_lifetime = -1; - emit_timeout = 1; - unpending_timeout = 1; - killed = 1; - pthread_cond_signal(&scan_cond); - pthread_cond_signal(&unpending_cond); - } - -#if ((DEBUG) & DEBUG_I) - if (sigs & SIGUSR1_MASK) { - sigs &= ~SIGUSR1_MASK; - info_debug(); - } -#endif - } - remove(pidfilepath); -#if ((DEBUG) & DEBUG_I) - info_debug(); -#endif - my_log(LOG_INFO, "Done."); -#ifdef WALL - return 0; -#endif -} diff --git a/trunk/src/fprobe-ulog.c.old b/trunk/src/fprobe-ulog.c.old deleted file mode 100644 index 7e8947d..0000000 --- a/trunk/src/fprobe-ulog.c.old +++ /dev/null @@ -1,1486 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: fprobe-ulog.c,v 1.1.2.4 2005/01/30 09:06:19 sla Exp $ -*/ - -#include - -/* stdout, stderr, freopen() */ -#include - -/* atoi(), exit() */ -#include - -/* getopt(), alarm(), getpid(), sedsid(), chdir() */ -#include - -/* strerror() */ -#include - -/* sig*() */ -#include - -#include -struct ipulog_handle { - int fd; - u_int8_t blocking; - struct sockaddr_nl local; - struct sockaddr_nl peer; - struct nlmsghdr* last_nlhdr; -}; - -/* inet_*() (Linux, FreeBSD, Solaris), getpid() */ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#ifdef OS_LINUX -#include -#endif - -/* pthread_*() */ -#include - -/* errno */ -#include - -/* getaddrinfo() */ -#include - -/* nanosleep() */ -#include - -/* gettimeofday() */ -#include - -/* scheduling */ -#include - -/* select() (POSIX)*/ -#include - -/* open() */ -#include -#include - -#include -#include -#include -#include -#include -#include - -enum { - aflag, - Bflag, - bflag, - cflag, - dflag, - eflag, - gflag, - hflag, - lflag, - mflag, - Mflag, - nflag, - qflag, - rflag, - sflag, - tflag, - Uflag, - uflag, - vflag, - Xflag, -}; - -static struct getopt_parms parms[] = { - {'a', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'B', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'b', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'c', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'d', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'e', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'g', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'h', 0, 0, 0}, - {'l', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'m', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'M', 0, 0, 0}, - {'n', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'q', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'r', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'s', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'t', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'U', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'u', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'v', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {'X', MY_GETOPT_ARG_REQUIRED, 0, 0}, - {0, 0, 0, 0} -}; - -extern char *optarg; -extern int optind, opterr, optopt; -extern int errno; - -extern struct NetFlow NetFlow1; -extern struct NetFlow NetFlow5; -extern struct NetFlow NetFlow7; - -#define mark_is_tos parms[Mflag].count -static unsigned scan_interval = 5; -static int frag_lifetime = 30; -static int inactive_lifetime = 60; -static int active_lifetime = 300; -static int sockbufsize; -#define BULK_QUANTITY_MAX (unsigned)(mem_index_t)(-1) -#if (MEM_BITS == 0) || (MEM_BITS == 16) -#define BULK_QUANTITY 10000 -#else -#define BULK_QUANTITY 200 -#endif -static unsigned bulk_quantity = BULK_QUANTITY; -static unsigned pending_queue_length = 100; -static struct NetFlow *netflow = &NetFlow5; -static unsigned verbosity = 6; -static unsigned log_dest = MY_LOG_SYSLOG; -static struct Time start_time; -static long start_time_offset; -static int off_tl; -/* From mem.c */ -extern unsigned total_elements; -extern unsigned free_elements; -extern unsigned total_memory; -#if ((DEBUG) & DEBUG_I) -static unsigned emit_pkts, emit_queue; -static uint64_t size_total; -static unsigned pkts_total, pkts_total_fragmented; -static unsigned pkts_ignored, pkts_lost_capture, pkts_lost_unpending; -static unsigned pkts_pending, pkts_pending_done; -static unsigned pending_queue_trace, pending_queue_trace_candidate; -static unsigned flows_total, flows_fragmented; -#endif -static unsigned emit_count; -static uint32_t emit_sequence; -static unsigned emit_rate_bytes, emit_rate_delay; -static struct Time emit_time; -static uint8_t emit_packet[NETFLOW_MAX_PACKET]; -static pthread_t thid; -static sigset_t sig_mask; -static struct sched_param schedp; -static int sched_min, sched_max; -static int npeers, npeers_rot; -static struct peer *peers; -static int sigs; - -static struct Flow *flows[1 << HASH_BITS]; -static pthread_mutex_t flows_mutex[1 << HASH_BITS]; - -static pthread_mutex_t unpending_mutex = PTHREAD_MUTEX_INITIALIZER; -static pthread_cond_t unpending_cond = PTHREAD_COND_INITIALIZER; - -static pthread_mutex_t scan_mutex = PTHREAD_MUTEX_INITIALIZER; -static pthread_cond_t scan_cond = PTHREAD_COND_INITIALIZER; -static struct Flow *pending_head, *pending_tail; -static struct Flow *scan_frag_dreg; - -static pthread_mutex_t emit_mutex = PTHREAD_MUTEX_INITIALIZER; -static pthread_cond_t emit_cond = PTHREAD_COND_INITIALIZER; -static struct Flow *flows_emit; - -static char ident[256] = "fprobe-ulog"; -static FILE *pidfile; -static char *pidfilepath; -static pid_t pid; -static int killed; -static int emit_timeout = EMIT_TIMEOUT, unpending_timeout = UNPENDING_TIMEOUT; -static struct ipulog_handle *ulog_handle; -static uint32_t ulog_gmask = 1; -static char *cap_buf; -static int nsnmp_rules; -static struct snmp_rule *snmp_rules; -static struct passwd *pw = 0; - -void usage() -{ - fprintf(stdout, - "fprobe-ulog: a NetFlow probe. Version %s\n" - "Usage: fprobe-ulog [options] remote:port[/[local][/type]] ...\n" - "\n" - "-h\t\tDisplay this help\n" - "-U \tULOG group bitwise mask [1]\n" - "-s \tHow often scan for expired flows [5]\n" - "-g \tFragmented flow lifetime [30]\n" - "-d \tIdle flow lifetime (inactive timer) [60]\n" - "-e \tActive flow lifetime (active timer) [300]\n" - "-n \tNetFlow version for use (1, 5 or 7) [5]\n" - "-a
\tUse
as source for NetFlow flow\n" - "-X \tInterface name to SNMP-index conversion rules\n" - "-M\t\tUse netfilter mark value as ToS flag\n" - "-b \tMemory bulk size (1..%u) [%u]\n" - "-m \tMemory limit (0=no limit) [0]\n" - "-q \tPending queue length [100]\n" - "-B \tKernel capture buffer size [0]\n" - "-r \tReal-time priority (0=disabled, %d..%d) [0]\n" - "-t \tProduce nanosecond delay after each bytes sent [0:0]\n" - "-c \tDirectory to chroot to\n" - "-u \tUser to run as\n" - "-v \tMaximum log level (0=EMERG, ..., 6=INFO, 7=DEBUG) [6]\n" - "-l <[dst][:id]>\tLog destination and log/pidfile idetifier [1]\n" - "remote:port\tAddress of the NetFlow collector\n", - VERSION, BULK_QUANTITY_MAX, bulk_quantity, sched_min, sched_max); - exit(0); -} - -#if ((DEBUG) & DEBUG_I) -void info_debug() -{ - my_log(LOG_DEBUG, "I: received:%d/%d (%lld) pending:%d/%d", - pkts_total, pkts_total_fragmented, size_total, - pkts_pending - pkts_pending_done, pending_queue_trace); - my_log(LOG_DEBUG, "I: ignored:%d lost:%d+%d", - pkts_ignored, pkts_lost_capture, pkts_lost_unpending); - my_log(LOG_DEBUG, "I: cache:%d/%d emit:%d/%d/%d", - flows_total, flows_fragmented, emit_sequence, emit_pkts, emit_queue); - my_log(LOG_DEBUG, "I: memory:%d/%d (%d)", - total_elements, free_elements, total_memory); -} -#endif - -void sighandler(int sig) -{ - switch (sig) { - case SIGTERM: - sigs |= SIGTERM_MASK; - break; -#if ((DEBUG) & DEBUG_I) - case SIGUSR1: - sigs |= SIGUSR1_MASK; - break; -#endif - } -} - -void gettime(struct Time *now) -{ - struct timeval t; - - gettimeofday(&t, 0); - now->sec = t.tv_sec; - now->usec = t.tv_usec; -} - -inline time_t cmpmtime(struct Time *t1, struct Time *t2) -{ - return (t1->sec - t2->sec) * 1000 + (t1->usec - t2->usec) / 1000; -} - -/* Uptime in miliseconds */ -uint32_t getuptime(struct Time *t) -{ - /* Maximum uptime is about 49/2 days */ - return cmpmtime(t, &start_time); -} - -hash_t hash_flow(struct Flow *flow) -{ - if (flow->flags & FLOW_FRAG) return hash(flow, sizeof(struct Flow_F)); - else return hash(flow, sizeof(struct Flow_TL)); -} - -uint16_t snmp_index(char *name) { - uint32_t i; - - if (!*name) return 0; - - for (i = 0; (int) i < nsnmp_rules; i++) { - if (strncmp(snmp_rules[i].basename, name, snmp_rules[i].len)) continue; - return atoi(&name[snmp_rules[i].len]) + snmp_rules[i].base; - } - - if ((i = if_nametoindex(name))) return i; - - return -1; -} - -inline void copy_flow(struct Flow *src, struct Flow *dst) -{ - dst->iif = src->iif; - dst->oif = src->oif; - dst->sip = src->sip; - dst->dip = src->dip; - dst->tos = src->tos; - dst->proto = src->proto; - dst->tcp_flags = src->tcp_flags; - dst->id = src->id; - dst->sp = src->sp; - dst->dp = src->dp; - dst->pkts = src->pkts; - dst->size = src->size; - dst->sizeF = src->sizeF; - dst->sizeP = src->sizeP; - dst->ctime = src->ctime; - dst->mtime = src->mtime; - dst->flags = src->flags; -} - -struct Flow *find(struct Flow *where, struct Flow *what, struct Flow ***prev) -{ - struct Flow **flowpp; - -#ifdef WALL - flowpp = 0; -#endif - - if (prev) flowpp = *prev; - - while (where) { - if (where->sip.s_addr == what->sip.s_addr - && where->dip.s_addr == what->dip.s_addr - && where->proto == what->proto) { - switch ((what->flags + where->flags) & FLOW_FRAGMASK) { - case 0: - /* Both unfragmented */ - if ((what->sp == where->sp) - && (what->dp == where->dp)) goto done; - break; - case 2: - /* Both fragmented */ - if (where->id == what->id) goto done; - break; - } - } - flowpp = &where->next; - where = where->next; - } -done: - if (prev) *prev = flowpp; - return where; -} - -int put_into(struct Flow *flow, int flag -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - , char *logbuf -#endif -) -{ - int ret = 0; - hash_t h; - struct Flow *flown, **flowpp; -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - char buf[64]; -#endif - - h = hash_flow(flow); -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - sprintf(buf, " %x H:%04x", (unsigned) flow, h); - strcat(logbuf, buf); -#endif - pthread_mutex_lock(&flows_mutex[h]); - flowpp = &flows[h]; - if (!(flown = find(flows[h], flow, &flowpp))) { - /* No suitable flow found - add */ - if (flag == COPY_INTO) { - if ((flown = mem_alloc())) { - copy_flow(flow, flown); - flow = flown; - } else { -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) || defined MESSAGES - my_log(LOG_ERR, "%s %s. %s", - "mem_alloc():", strerror(errno), "packet lost"); -#endif - return -1; - } - } - flow->next = flows[h]; - flows[h] = flow; -#if ((DEBUG) & DEBUG_I) - flows_total++; - if (flow->flags & FLOW_FRAG) flows_fragmented++; -#endif -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - if (flown) { - sprintf(buf, " => %x, flags: %x", (unsigned) flown, flown->flags); - strcat(logbuf, buf); - } -#endif - } else { - /* Found suitable flow - update */ -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - sprintf(buf, " +> %x", (unsigned) flown); - strcat(logbuf, buf); -#endif - if (cmpmtime(&flow->mtime, &flown->mtime) > 0) - flown->mtime = flow->mtime; - if (cmpmtime(&flow->ctime, &flown->ctime) < 0) - flown->ctime = flow->ctime; - flown->tcp_flags |= flow->tcp_flags; - flown->size += flow->size; - flown->pkts += flow->pkts; - if (flow->flags & FLOW_FRAG) { - /* Fragmented flow require some additional work */ - if (flow->flags & FLOW_TL) { - /* - ?FIXME? - Several packets with FLOW_TL (attack) - */ - flown->sp = flow->sp; - flown->dp = flow->dp; - } - if (flow->flags & FLOW_LASTFRAG) { - /* - ?FIXME? - Several packets with FLOW_LASTFRAG (attack) - */ - flown->sizeP = flow->sizeP; - } - flown->flags |= flow->flags; - flown->sizeF += flow->sizeF; - if ((flown->flags & FLOW_LASTFRAG) - && (flown->sizeF >= flown->sizeP)) { - /* All fragments received - flow reassembled */ - *flowpp = flown->next; - pthread_mutex_unlock(&flows_mutex[h]); -#if ((DEBUG) & DEBUG_I) - flows_total--; - flows_fragmented--; -#endif - flown->id = 0; - flown->flags &= ~FLOW_FRAG; -#if ((DEBUG) & (DEBUG_U | DEBUG_S)) - strcat(logbuf," R"); -#endif - ret = put_into(flown, MOVE_INTO -#if ((DEBUG) & (DEBUG_U | DEBUG_S)) - , logbuf -#endif - ); - } - } - if (flag == MOVE_INTO) mem_free(flow); - } - pthread_mutex_unlock(&flows_mutex[h]); - return ret; -} - -void *fill(int fields, uint16_t *format, struct Flow *flow, void *p) -{ - int i; - - for (i = 0; i < fields; i++) { -#if ((DEBUG) & DEBUG_F) - my_log(LOG_DEBUG, "F: field %04d at %x", format[i], (unsigned) p); -#endif - switch (format[i]) { - case NETFLOW_IPV4_SRC_ADDR: - ((struct in_addr *) p)->s_addr = flow->sip.s_addr; - p += NETFLOW_IPV4_SRC_ADDR_SIZE; - break; - - case NETFLOW_IPV4_DST_ADDR: - ((struct in_addr *) p)->s_addr = flow->dip.s_addr; - p += NETFLOW_IPV4_DST_ADDR_SIZE; - break; - - case NETFLOW_INPUT_SNMP: - *((uint16_t *) p) = htons(flow->iif); - p += NETFLOW_INPUT_SNMP_SIZE; - break; - - case NETFLOW_OUTPUT_SNMP: - *((uint16_t *) p) = htons(flow->oif); - p += NETFLOW_OUTPUT_SNMP_SIZE; - break; - - case NETFLOW_PKTS_32: - *((uint32_t *) p) = htonl(flow->pkts); - p += NETFLOW_PKTS_32_SIZE; - break; - - case NETFLOW_BYTES_32: - *((uint32_t *) p) = htonl(flow->size); - p += NETFLOW_BYTES_32_SIZE; - break; - - case NETFLOW_FIRST_SWITCHED: - *((uint32_t *) p) = htonl(getuptime(&flow->ctime)); - p += NETFLOW_FIRST_SWITCHED_SIZE; - break; - - case NETFLOW_LAST_SWITCHED: - *((uint32_t *) p) = htonl(getuptime(&flow->mtime)); - p += NETFLOW_LAST_SWITCHED_SIZE; - break; - - case NETFLOW_L4_SRC_PORT: - *((uint16_t *) p) = flow->sp; - p += NETFLOW_L4_SRC_PORT_SIZE; - break; - - case NETFLOW_L4_DST_PORT: - *((uint16_t *) p) = flow->dp; - p += NETFLOW_L4_DST_PORT_SIZE; - break; - - case NETFLOW_PROT: - *((uint8_t *) p) = flow->proto; - p += NETFLOW_PROT_SIZE; - break; - - case NETFLOW_SRC_TOS: - *((uint8_t *) p) = flow->tos; - p += NETFLOW_SRC_TOS_SIZE; - break; - - case NETFLOW_TCP_FLAGS: - *((uint8_t *) p) = flow->tcp_flags; - p += NETFLOW_TCP_FLAGS_SIZE; - break; - - case NETFLOW_VERSION: - *((uint16_t *) p) = htons(netflow->Version); - p += NETFLOW_VERSION_SIZE; - break; - - case NETFLOW_COUNT: - *((uint16_t *) p) = htons(emit_count); - p += NETFLOW_COUNT_SIZE; - break; - - case NETFLOW_UPTIME: - *((uint32_t *) p) = htonl(getuptime(&emit_time)); - p += NETFLOW_UPTIME_SIZE; - break; - - case NETFLOW_UNIX_SECS: - *((uint32_t *) p) = htonl(emit_time.sec); - p += NETFLOW_UNIX_SECS_SIZE; - break; - - case NETFLOW_UNIX_NSECS: - *((uint32_t *) p) = htonl(emit_time.usec * 1000); - p += NETFLOW_UNIX_NSECS_SIZE; - break; - - case NETFLOW_FLOW_SEQUENCE: - //*((uint32_t *) p) = htonl(emit_sequence); - *((uint32_t *) p) = 0; - p += NETFLOW_FLOW_SEQUENCE_SIZE; - break; - - case NETFLOW_PAD8: - /* Unsupported (uint8_t) */ - case NETFLOW_ENGINE_TYPE: - case NETFLOW_ENGINE_ID: - case NETFLOW_FLAGS7_1: - case NETFLOW_SRC_MASK: - case NETFLOW_DST_MASK: - *((uint8_t *) p) = 0; - p += NETFLOW_PAD8_SIZE; - break; - - case NETFLOW_PAD16: - /* Unsupported (uint16_t) */ - case NETFLOW_SRC_AS: - case NETFLOW_DST_AS: - case NETFLOW_FLAGS7_2: - *((uint16_t *) p) = 0; - p += NETFLOW_PAD16_SIZE; - break; - - case NETFLOW_PAD32: - /* Unsupported (uint32_t) */ - case NETFLOW_IPV4_NEXT_HOP: - case NETFLOW_ROUTER_SC: - *((uint32_t *) p) = 0; - p += NETFLOW_PAD32_SIZE; - break; - - default: - my_log(LOG_CRIT, "fill(): Unknown format at %x[%d]: %d", - format, i, format[i]); - exit(1); - } - } -#if ((DEBUG) & DEBUG_F) - my_log(LOG_DEBUG, "F: return %x", (unsigned) p); -#endif - return p; -} - -void setuser() { - /* - Workaround for clone()-based threads - Try to change EUID independently of main thread - */ - if (pw) { - setgroups(0, NULL); - setregid(pw->pw_gid, pw->pw_gid); - setreuid(pw->pw_uid, pw->pw_uid); - } -} - -void *emit_thread() -{ - struct Flow *flow; - void *p; - struct timeval now; - struct timespec timeout; - int i, ret, sent = 0, size, delay, peer_rot_cur, peer_rot_work = 0; - - p = (void *) &emit_packet + netflow->HeaderSize; - timeout.tv_nsec = 0; - - setuser(); - - for (;;) { - pthread_mutex_lock(&emit_mutex); - while (!flows_emit) { - gettimeofday(&now, 0); - timeout.tv_sec = now.tv_sec + emit_timeout; - /* Do not wait until emit_packet will filled - it may be too long */ - if (pthread_cond_timedwait(&emit_cond, &emit_mutex, &timeout) && emit_count) { - pthread_mutex_unlock(&emit_mutex); - goto sendit; - } - } - flow = flows_emit; - flows_emit = flows_emit->next; -#if ((DEBUG) & DEBUG_I) - emit_queue--; -#endif - pthread_mutex_unlock(&emit_mutex); - -#ifdef UPTIME_TRICK - if (!emit_count) { - gettime(&start_time); - start_time.sec -= start_time_offset; - } -#endif - p = fill(netflow->FlowFields, netflow->FlowFormat, flow, p); - mem_free(flow); - emit_count++; - if (emit_count == netflow->MaxFlows) { - sendit: - gettime(&emit_time); - p = fill(netflow->HeaderFields, netflow->HeaderFormat, 0, &emit_packet); - size = netflow->HeaderSize + emit_count * netflow->FlowSize; - peer_rot_cur = 0; - for (i = 0; i < npeers; i++) { - if (peers[i].type == PEER_MIRROR) goto sendreal; - if (peers[i].type == PEER_ROTATE) - if (peer_rot_cur++ == peer_rot_work) { - sendreal: - if (netflow->SeqOffset) - *((uint32_t *) (emit_packet + netflow->SeqOffset)) = htonl(peers[i].seq); - ret = send(peers[i].sock, emit_packet, size, 0); - if (ret < size) { -#if ((DEBUG) & DEBUG_E) || defined MESSAGES - my_log(LOG_ERR, "send(to #%d, seq %d, flows %d, size %d) == %d: %s", - i + 1, peers[i].seq, emit_count, size, ret, strerror(errno)); -#endif - } -#if ((DEBUG) & DEBUG_E) - commaneelse { - my_log(LOG_DEBUG, "E: Emitted %d flow(s) to #%d, seq %d", - emit_count, i + 1, peers[i].seq); - } -#endif - peers[i].seq += emit_count; - - /* Rate limit */ - if (emit_rate_bytes) { - sent += size; - delay = sent / emit_rate_bytes; - if (delay) { - sent %= emit_rate_bytes; - timeout.tv_sec = 0; - timeout.tv_nsec = emit_rate_delay * delay; - while (nanosleep(&timeout, &timeout) == -1 && errno == EINTR); - } - } - } - } - if (npeers_rot) peer_rot_work = (peer_rot_work + 1) % npeers_rot; - emit_sequence += emit_count; - emit_count = 0; -#if ((DEBUG) & DEBUG_I) - emit_pkts++; -#endif - } - } -} - -void *unpending_thread() -{ - struct timeval now; - struct timespec timeout; -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - char logbuf[256]; -#endif - - setuser(); - - timeout.tv_nsec = 0; - pthread_mutex_lock(&unpending_mutex); - - for (;;) { - while (!(pending_tail->flags & FLOW_PENDING)) { - gettimeofday(&now, 0); - timeout.tv_sec = now.tv_sec + unpending_timeout; - pthread_cond_timedwait(&unpending_cond, &unpending_mutex, &timeout); - } - -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - *logbuf = 0; -#endif - if (put_into(pending_tail, COPY_INTO -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - , logbuf -#endif - ) < 0) { -#if ((DEBUG) & DEBUG_I) - pkts_lost_unpending++; -#endif - } - -#if ((DEBUG) & DEBUG_U) - my_log(LOG_DEBUG, "%s%s", "U:", logbuf); -#endif - - pending_tail->flags = 0; - pending_tail = pending_tail->next; -#if ((DEBUG) & DEBUG_I) - pkts_pending_done++; -#endif - } -} - -void *scan_thread() -{ -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - char logbuf[256]; -#endif - int i; - struct Flow *flow, **flowpp; - struct Time now; - struct timespec timeout; - - setuser(); - - timeout.tv_nsec = 0; - pthread_mutex_lock(&scan_mutex); - - for (;;) { - gettime(&now); - timeout.tv_sec = now.sec + scan_interval; - pthread_cond_timedwait(&scan_cond, &scan_mutex, &timeout); - - gettime(&now); -#if ((DEBUG) & DEBUG_S) - my_log(LOG_DEBUG, "S: %d", now.sec); -#endif - for (i = 0; i < 1 << HASH_BITS ; i++) { - pthread_mutex_lock(&flows_mutex[i]); - flow = flows[i]; - flowpp = &flows[i]; - while (flow) { - if (flow->flags & FLOW_FRAG) { - /* Process fragmented flow */ - if ((now.sec - flow->mtime.sec) > frag_lifetime) { - /* Fragmented flow expired - put it into special chain */ -#if ((DEBUG) & DEBUG_I) - flows_fragmented--; - flows_total--; -#endif - *flowpp = flow->next; - flow->id = 0; - flow->flags &= ~FLOW_FRAG; - flow->next = scan_frag_dreg; - scan_frag_dreg = flow; - flow = *flowpp; - continue; - } - } else { - /* Flow is not frgamented */ - if ((now.sec - flow->mtime.sec) > inactive_lifetime - || (flow->mtime.sec - flow->ctime.sec) > active_lifetime) { - /* Flow expired */ -#if ((DEBUG) & DEBUG_S) - my_log(LOG_DEBUG, "S: E %x", flow); -#endif -#if ((DEBUG) & DEBUG_I) - flows_total--; -#endif - *flowpp = flow->next; - pthread_mutex_lock(&emit_mutex); - flow->next = flows_emit; - flows_emit = flow; -#if ((DEBUG) & DEBUG_I) - emit_queue++; -#endif - pthread_mutex_unlock(&emit_mutex); - flow = *flowpp; - continue; - } - } - flowpp = &flow->next; - flow = flow->next; - } /* chain loop */ - pthread_mutex_unlock(&flows_mutex[i]); - } /* hash loop */ - if (flows_emit) pthread_cond_signal(&emit_cond); - - while (scan_frag_dreg) { - flow = scan_frag_dreg; - scan_frag_dreg = flow->next; -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - *logbuf = 0; -#endif - put_into(flow, MOVE_INTO -#if ((DEBUG) & (DEBUG_S | DEBUG_U)) - , logbuf -#endif - ); -#if ((DEBUG) & DEBUG_S) - my_log(LOG_DEBUG, "%s%s", "S: FE", logbuf); -#endif - } - } -} - -void *cap_thread() -{ - struct ulog_packet_msg *ulog_msg; - struct ip *nl; - void *tl; - struct Flow *flow; - int len, off_frag, psize; -#if ((DEBUG) & DEBUG_C) - char buf[64]; - char logbuf[256]; -#endif - - setuser(); - - while (!killed) { - len = ipulog_read(ulog_handle, cap_buf, CAPTURE_SIZE, 1); - if (len <= 0) { - my_log(LOG_ERR, "ipulog_read(): %s", ipulog_strerror(ipulog_errno)); - continue; - } - while ((ulog_msg = ipulog_get_packet(ulog_handle, cap_buf, len))) { - -#if ((DEBUG) & DEBUG_C) - sprintf(logbuf, "C: %d", ulog_msg->data_len); -#endif - - nl = (void *) &ulog_msg->payload; - psize = ulog_msg->data_len; - - /* Sanity check */ - if (psize < (signed) sizeof(struct ip) || nl->ip_v != 4) { -#if ((DEBUG) & DEBUG_C) - strcat(logbuf, " U"); - my_log(LOG_DEBUG, "%s", logbuf); -#endif -#if ((DEBUG) & DEBUG_I) - pkts_ignored++; -#endif - continue; - } - - if (pending_head->flags) { -#if ((DEBUG) & DEBUG_C) || defined MESSAGES - my_log(LOG_ERR, -# if ((DEBUG) & DEBUG_C) - "%s %s %s", logbuf, -# else - "%s %s", -# endif - "pending queue full:", "packet lost"); -#endif -#if ((DEBUG) & DEBUG_I) - pkts_lost_capture++; -#endif - goto done; - } - -#if ((DEBUG) & DEBUG_I) - pkts_total++; -#endif - - flow = pending_head; - - /* ?FIXME? Add sanity check for ip_len? */ - flow->size = ntohs(nl->ip_len); -#if ((DEBUG) & DEBUG_I) - size_total += flow->size; -#endif - - flow->sip = nl->ip_src; - flow->dip = nl->ip_dst; - flow->iif = snmp_index(ulog_msg->indev_name); - flow->oif = snmp_index(ulog_msg->outdev_name); - flow->tos = mark_is_tos ? ulog_msg->mark : nl->ip_tos; - flow->proto = nl->ip_p; - flow->id = 0; - flow->tcp_flags = 0; - flow->pkts = 1; - flow->sizeF = 0; - flow->sizeP = 0; - /* Packets captured from OUTPUT table didn't contains valid timestamp */ - if (ulog_msg->timestamp_sec) { - flow->ctime.sec = ulog_msg->timestamp_sec; - flow->ctime.usec = ulog_msg->timestamp_usec; - } else gettime(&flow->ctime); - flow->mtime = flow->ctime; - - off_frag = (ntohs(nl->ip_off) & IP_OFFMASK) << 3; - - /* - Offset (from network layer) to transport layer header/IP data - IOW IP header size ;-) - - ?FIXME? - Check ip_hl for valid value (>=5)? Maybe check CRC? No, thanks... - */ - off_tl = nl->ip_hl << 2; - tl = (void *) nl + off_tl; - - /* THIS packet data size: data_size = total_size - ip_header_size*4 */ - flow->sizeF = ntohs(nl->ip_len) - off_tl; - psize -= off_tl; - if ((signed) flow->sizeF < 0) flow->sizeF = 0; - if (psize > (signed) flow->sizeF) psize = flow->sizeF; - - if (ntohs(nl->ip_off) & (IP_MF | IP_OFFMASK)) { - /* Fragmented packet (IP_MF flag == 1 or fragment offset != 0) */ -#if ((DEBUG) & DEBUG_C) - strcat(logbuf, " F"); -#endif -#if ((DEBUG) & DEBUG_I) - pkts_total_fragmented++; -#endif - flow->flags |= FLOW_FRAG; - flow->id = nl->ip_id; - - if (!(ntohs(nl->ip_off) & IP_MF)) { - /* Packet whith IP_MF contains information about whole datagram size */ - flow->flags |= FLOW_LASTFRAG; - /* size = frag_offset*8 + data_size */ - flow->sizeP = off_frag + flow->sizeF; - } - } - -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " %s@%u>", inet_ntoa(flow->sip), flow->iif); - strcat(logbuf, buf); - sprintf(buf, "%s@%u P:%x", inet_ntoa(flow->dip), flow->oif, flow->proto); - strcat(logbuf, buf); -#endif - - /* - Fortunately most interesting transport layer information fit - into first 8 bytes of IP data field (minimal nonzero size). - Thus we don't need actual packet reassembling to build whole - transport layer data. We only check the fragment offset for - zero value to find packet with this information. - */ - if (!off_frag && psize >= 8) { - switch (flow->proto) { - case IPPROTO_TCP: - case IPPROTO_UDP: - flow->sp = ((struct udphdr *)tl)->uh_sport; - flow->dp = ((struct udphdr *)tl)->uh_dport; - goto tl_known; - -#ifdef ICMP_TRICK - case IPPROTO_ICMP: - flow->sp = htons(((struct icmp *)tl)->icmp_type); - flow->dp = htons(((struct icmp *)tl)->icmp_code); - goto tl_known; -#endif -#ifdef ICMP_TRICK_CISCO - case IPPROTO_ICMP: - flow->dp = *((int32_t *) tl); - goto tl_known; -#endif - - default: - /* Unknown transport layer */ -#if ((DEBUG) & DEBUG_C) - strcat(logbuf, " U"); -#endif - flow->sp = 0; - flow->dp = 0; - break; - - tl_known: -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " %d>%d", ntohs(flow->sp), ntohs(flow->dp)); - strcat(logbuf, buf); -#endif - flow->flags |= FLOW_TL; - } - } - - /* Check for tcp flags presence (including CWR and ECE). */ - if (flow->proto == IPPROTO_TCP - && off_frag < 16 - && psize >= 16 - off_frag) { - flow->tcp_flags = *((uint8_t *)(tl + 13 - off_frag)); -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " TCP:%x", flow->tcp_flags); - strcat(logbuf, buf); -#endif - } - -#if ((DEBUG) & DEBUG_C) - sprintf(buf, " => %x", (unsigned) flow); - strcat(logbuf, buf); - my_log(LOG_DEBUG, "%s", logbuf); -#endif - -#if ((DEBUG) & DEBUG_I) - pkts_pending++; - pending_queue_trace_candidate = pkts_pending - pkts_pending_done; - if (pending_queue_trace < pending_queue_trace_candidate) - pending_queue_trace = pending_queue_trace_candidate; -#endif - - /* Flow complete - inform unpending_thread() about it */ - pending_head->flags |= FLOW_PENDING; - pending_head = pending_head->next; - done: - pthread_cond_signal(&unpending_cond); - } - } - return 0; -} - -int main(int argc, char **argv) -{ - char errpbuf[512]; - char *dhost, *dport, *lhost, *type = 0, *log_suffix = 0, *rule; - int c, i, sock, memory_limit = 0; - struct addrinfo hints, *res; - struct sockaddr_in saddr; - pthread_attr_t tattr; - struct sigaction sigact; - static void *threads[THREADS - 1] = {&emit_thread, &scan_thread, &unpending_thread, &cap_thread}; - struct timeval timeout; - - sched_min = sched_get_priority_min(SCHED); - sched_max = sched_get_priority_max(SCHED); - - memset(&saddr, 0 , sizeof(saddr)); - memset(&hints, 0 , sizeof(hints)); - hints.ai_flags = AI_PASSIVE; - hints.ai_family = AF_INET; - hints.ai_socktype = SOCK_DGRAM; - - /* Process command line options */ - - opterr = 0; - while ((c = my_getopt(argc, argv, parms)) != -1) { - switch (c) { - case '?': - usage(); - - case 'h': - usage(); - } - } - - if (parms[Uflag].count) ulog_gmask = atoi(parms[Uflag].arg); - if (parms[sflag].count) scan_interval = atoi(parms[sflag].arg); - if (parms[gflag].count) frag_lifetime = atoi(parms[gflag].arg); - if (parms[dflag].count) inactive_lifetime = atoi(parms[dflag].arg); - if (parms[eflag].count) active_lifetime = atoi(parms[eflag].arg); - if (parms[nflag].count) { - switch (atoi(parms[nflag].arg)) { - case 1: - netflow = &NetFlow1; - break; - - case 5: - break; - - case 7: - netflow = &NetFlow7; - break; - - default: - fprintf(stderr, "Illegal %s\n", "NetFlow version"); - exit(1); - } - } - if (parms[vflag].count) verbosity = atoi(parms[vflag].arg); - if (parms[lflag].count) { - if ((log_suffix = strchr(parms[lflag].arg, ':'))) { - *log_suffix++ = 0; - if (*log_suffix) { - sprintf(errpbuf, "[%s]", log_suffix); - strcat(ident, errpbuf); - } - } - if (*parms[lflag].arg) log_dest = atoi(parms[lflag].arg); - if (log_suffix) *--log_suffix = ':'; - } - if (!(pidfilepath = malloc(sizeof(PID_DIR) + 1 + strlen(ident) + 1 + 3 + 1))) { - err_malloc: - fprintf(stderr, "malloc(): %s\n", strerror(errno)); - exit(1); - } - sprintf(pidfilepath, "%s/%s.pid", PID_DIR, ident); - if (parms[qflag].count) { - pending_queue_length = atoi(parms[qflag].arg); - if (pending_queue_length < 1) { - fprintf(stderr, "Illegal %s\n", "pending queue length"); - exit(1); - } - } - if (parms[rflag].count) { - schedp.sched_priority = atoi(parms[rflag].arg); - if (schedp.sched_priority - && (schedp.sched_priority < sched_min - || schedp.sched_priority > sched_max)) { - fprintf(stderr, "Illegal %s\n", "realtime priority"); - exit(1); - } - } - if (parms[Bflag].count) { - sockbufsize = atoi(parms[Bflag].arg) << 10; - } - if (parms[bflag].count) { - bulk_quantity = atoi(parms[bflag].arg); - if (bulk_quantity < 1 || bulk_quantity > BULK_QUANTITY_MAX) { - fprintf(stderr, "Illegal %s\n", "bulk size"); - exit(1); - } - } - if (parms[mflag].count) memory_limit = atoi(parms[mflag].arg) << 10; - if (parms[Xflag].count) { - for(i = 0; parms[Xflag].arg[i]; i++) - if (parms[Xflag].arg[i] == ':') nsnmp_rules++; - if (!(snmp_rules = malloc(nsnmp_rules * sizeof(struct snmp_rule)))) - goto err_malloc; - rule = strtok(parms[Xflag].arg, ":"); - for (i = 0; rule; i++) { - snmp_rules[i].len = strlen(rule); - if (snmp_rules[i].len > IFNAMSIZ) { - fprintf(stderr, "Illegal %s\n", "interface basename"); - exit(1); - } - strncpy(snmp_rules[i].basename, rule, snmp_rules[i].len); - if (!*(rule - 1)) *(rule - 1) = ','; - rule = strtok(NULL, ","); - if (!rule) { - fprintf(stderr, "Illegal %s\n", "SNMP rule"); - exit(1); - } - snmp_rules[i].base = atoi(rule); - *(rule - 1) = ':'; - rule = strtok(NULL, ":"); - } - nsnmp_rules = i; - } - if (parms[tflag].count) - sscanf(parms[tflag].arg, "%d:%d", &emit_rate_bytes, &emit_rate_delay); - if (parms[aflag].count) { - if (getaddrinfo(parms[aflag].arg, 0, &hints, &res)) { - bad_lhost: - fprintf(stderr, "Illegal %s\n", "source address"); - exit(1); - } else { - saddr = *((struct sockaddr_in *) res->ai_addr); - freeaddrinfo(res); - } - } - if (parms[uflag].count) - if ((pw = getpwnam(parms[uflag].arg)) == NULL) { - fprintf(stderr, "getpwnam(%s): %s\n", parms[uflag].arg, errno ? strerror(errno) : "Unknown user"); - exit(1); - } - - - /* Process collectors parameters. Brrrr... :-[ */ - - npeers = argc - optind; - if (npeers < 1) usage(); - if (!(peers = malloc(npeers * sizeof(struct peer)))) goto err_malloc; - for (i = optind, npeers = 0; i < argc; i++, npeers++) { - dhost = argv[i]; - if (!(dport = strchr(dhost, ':'))) goto bad_collector; - *dport++ = 0; - if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { - fprintf(stderr, "socket(): %s\n", strerror(errno)); - exit(1); - } - peers[npeers].sock = sock; - peers[npeers].type = PEER_MIRROR; - peers[npeers].laddr = saddr; - peers[npeers].seq = 0; - if ((lhost = strchr(dport, '/'))) { - *lhost++ = 0; - if ((type = strchr(lhost, '/'))) { - *type++ = 0; - switch (*type) { - case 0: - case 'm': - break; - - case 'r': - peers[npeers].type = PEER_ROTATE; - npeers_rot++; - break; - - default: - goto bad_collector; - } - } - if (*lhost) { - if (getaddrinfo(lhost, 0, &hints, &res)) goto bad_lhost; - peers[npeers].laddr = *((struct sockaddr_in *) res->ai_addr); - freeaddrinfo(res); - } - } - if (bind(sock, (struct sockaddr *) &peers[npeers].laddr, - sizeof(struct sockaddr_in))) { - fprintf(stderr, "bind(): %s\n", strerror(errno)); - exit(1); - } - if (getaddrinfo(dhost, dport, &hints, &res)) { - bad_collector: - fprintf(stderr, "Error in collector #%d parameters\n", npeers + 1); - exit(1); - } - peers[npeers].addr = *((struct sockaddr_in *) res->ai_addr); - freeaddrinfo(res); - if (connect(sock, (struct sockaddr *) &peers[npeers].addr, - sizeof(struct sockaddr_in))) { - fprintf(stderr, "connect(): %s\n", strerror(errno)); - exit(1); - } - - /* Restore command line */ - if (type) *--type = '/'; - if (lhost) *--lhost = '/'; - *--dport = ':'; - } - - if (!(cap_buf = malloc(CAPTURE_SIZE))) goto err_malloc; - ulog_handle = ipulog_create_handle(ulog_gmask, CAPTURE_SIZE); - if (!ulog_handle) { - fprintf(stderr, "libipulog initialization error: %s", - ipulog_strerror(ipulog_errno)); - exit(1); - } - if (sockbufsize) - if (setsockopt(ulog_handle->fd, SOL_SOCKET, SO_RCVBUF, - &sockbufsize, sizeof(sockbufsize)) < 0) - fprintf(stderr, "setsockopt(): %s", strerror(errno)); - - /* Daemonize (if log destination stdout-free) */ - - my_log_open(ident, verbosity, log_dest); - if (!(log_dest & 2)) { - switch (fork()) { - case -1: - fprintf(stderr, "fork(): %s", strerror(errno)); - exit(1); - - case 0: - setsid(); - freopen("/dev/null", "r", stdin); - freopen("/dev/null", "w", stdout); - freopen("/dev/null", "w", stderr); - break; - - default: - exit(0); - } - } else { - setvbuf(stdout, (char *)0, _IONBF, 0); - setvbuf(stderr, (char *)0, _IONBF, 0); - } - - pid = getpid(); - sprintf(errpbuf, "[%ld]", (long) pid); - strcat(ident, errpbuf); - - /* Initialization */ - - hash_init(); /* Actually for crc16 only */ - mem_init(sizeof(struct Flow), bulk_quantity, memory_limit); - for (i = 0; i < 1 << HASH_BITS; i++) pthread_mutex_init(&flows_mutex[i], 0); - -#ifdef UPTIME_TRICK - /* Hope 12 days is enough :-/ */ - start_time_offset = 1 << 20; - - /* start_time_offset = active_lifetime + inactive_lifetime + scan_interval; */ -#endif - gettime(&start_time); - - /* - Build static pending queue as circular buffer. - */ - if (!(pending_head = mem_alloc())) goto err_mem_alloc; - pending_tail = pending_head; - for (i = pending_queue_length - 1; i--;) { - if (!(pending_tail->next = mem_alloc())) { - err_mem_alloc: - my_log(LOG_CRIT, "mem_alloc(): %s", strerror(errno)); - exit(1); - } - pending_tail = pending_tail->next; - } - pending_tail->next = pending_head; - pending_tail = pending_head; - - sigemptyset(&sig_mask); - sigact.sa_handler = &sighandler; - sigact.sa_mask = sig_mask; - sigact.sa_flags = 0; - sigaddset(&sig_mask, SIGTERM); - sigaction(SIGTERM, &sigact, 0); -#if ((DEBUG) & DEBUG_I) - sigaddset(&sig_mask, SIGUSR1); - sigaction(SIGUSR1, &sigact, 0); -#endif - if (pthread_sigmask(SIG_BLOCK, &sig_mask, 0)) { - my_log(LOG_CRIT, "pthread_sigmask(): %s", strerror(errno)); - exit(1); - } - - my_log(LOG_INFO, "Starting %s...", VERSION); - - if (parms[cflag].count) { - if (chdir(parms[cflag].arg) || chroot(".")) { - my_log(LOG_CRIT, "could not chroot to %s: %s", parms[cflag].arg, strerror(errno)); - exit(1); - } - } - - schedp.sched_priority = schedp.sched_priority - THREADS + 2; - pthread_attr_init(&tattr); - for (i = 0; i < THREADS - 1; i++) { - if (schedp.sched_priority > 0) { - if ((pthread_attr_setschedpolicy(&tattr, SCHED)) || - (pthread_attr_setschedparam(&tattr, &schedp))) { - my_log(LOG_CRIT, "pthread_attr_setschedpolicy(): %s", strerror(errno)); - exit(1); - } - } - if (pthread_create(&thid, &tattr, threads[i], 0)) { - my_log(LOG_CRIT, "pthread_create(): %s", strerror(errno)); - exit(1); - } - pthread_detach(thid); - schedp.sched_priority++; - } - - if (pw) { - if (setgroups(0, NULL)) { - my_log(LOG_CRIT, "setgroups(): %s", strerror(errno)); - exit(1); - } - if (setregid(pw->pw_gid, pw->pw_gid)) { - my_log(LOG_CRIT, "setregid(%u): %s", pw->pw_gid, strerror(errno)); - exit(1); - } - if (setreuid(pw->pw_uid, pw->pw_uid)) { - my_log(LOG_CRIT, "setreuid(%u): %s", pw->pw_uid, strerror(errno)); - exit(1); - } - } - - if (!(pidfile = fopen(pidfilepath, "w"))) - my_log(LOG_ERR, "Can't create pid file. fopen(): %s", strerror(errno)); - else { - fprintf(pidfile, "%ld\n", (long) pid); - fclose(pidfile); - } - - my_log(LOG_INFO, "pid: %d", pid); - my_log(LOG_INFO, "options: u=%u s=%u g=%u d=%u e=%u n=%u a=%s " - "M=%d b=%u m=%u q=%u B=%u r=%u t=%u:%u c=%s u=%s v=%u l=%u%s", - ulog_gmask, scan_interval, frag_lifetime, inactive_lifetime, active_lifetime, - netflow->Version, inet_ntoa(saddr.sin_addr), mark_is_tos, bulk_quantity, - memory_limit >> 10, pending_queue_length, sockbufsize >> 10, schedp.sched_priority - 1, - emit_rate_bytes, emit_rate_delay, parms[cflag].count ? parms[cflag].arg : "", - parms[uflag].count ? parms[uflag].arg : "", verbosity, log_dest, log_suffix ? log_suffix : ""); - for (i = 0; i < nsnmp_rules; i++) { - my_log(LOG_INFO, "SNMP rule #%d %s:%d", - i + 1, snmp_rules[i].basename, snmp_rules[i].base); - } - for (i = 0; i < npeers; i++) { - switch (peers[i].type) { - case PEER_MIRROR: - c = 'm'; - break; - case PEER_ROTATE: - c = 'r'; - break; - } - snprintf(errpbuf, sizeof(errpbuf), "%s", inet_ntoa(peers[i].laddr.sin_addr)); - my_log(LOG_INFO,"collector #%d: %s:%u/%s/%c", i + 1, - inet_ntoa(peers[i].addr.sin_addr), ntohs(peers[i].addr.sin_port), errpbuf, c); - } - - pthread_sigmask(SIG_UNBLOCK, &sig_mask, 0); - - timeout.tv_usec = 0; - while (!killed - || (total_elements - free_elements - pending_queue_length) - || emit_count - || pending_tail->flags) { - - if (!sigs) { - timeout.tv_sec = scan_interval; - select(0, 0, 0, 0, &timeout); - } - - if (sigs & SIGTERM_MASK && !killed) { - sigs &= ~SIGTERM_MASK; - my_log(LOG_INFO, "SIGTERM received. Emitting flows cache..."); - scan_interval = 1; - frag_lifetime = -1; - active_lifetime = -1; - inactive_lifetime = -1; - emit_timeout = 1; - unpending_timeout = 1; - killed = 1; - pthread_cond_signal(&scan_cond); - pthread_cond_signal(&unpending_cond); - } - -#if ((DEBUG) & DEBUG_I) - if (sigs & SIGUSR1_MASK) { - sigs &= ~SIGUSR1_MASK; - info_debug(); - } -#endif - } - remove(pidfilepath); -#if ((DEBUG) & DEBUG_I) - info_debug(); -#endif - my_log(LOG_INFO, "Done."); -#ifdef WALL - return 0; -#endif -} diff --git a/trunk/src/fprobe-ulog.h b/trunk/src/fprobe-ulog.h deleted file mode 100644 index 0d812c5..0000000 --- a/trunk/src/fprobe-ulog.h +++ /dev/null @@ -1,131 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: fprobe-ulog.h,v 1.1.2.3 2005/01/29 19:30:41 sla Exp $ -*/ - -#ifndef _FPROBE_ULOG_H_ -#define _FPROBE_ULOG_H_ - -#include - -#ifndef IP_OFFMASK -#define IP_OFFMASK 0x1fff -#endif - -#define SCHED SCHED_FIFO -#define EMIT_TIMEOUT 5 -#define UNPENDING_TIMEOUT 5 -#define CAPTURE_SIZE 131072 -#define THREADS 5 -#define COPY_INTO 0 -#define MOVE_INTO 1 - -struct Time { - time_t sec; - long usec; -}; - -struct Flow { - /* input interface */ - uint16_t iif; - /* output interface */ - uint16_t oif; - /* ip src address */ - struct in_addr sip; - /* ip dst address */ - struct in_addr dip; - /* ip protocol */ - uint8_t proto; - /* ip fragment id */ - uint16_t id; - /* tcp/udp src port or icmp message type */ - uint16_t sp; - /* tcp/udp dst port or icmp type sub-code */ - uint16_t dp; - /* ip ToS */ - uint8_t tos; - /* tcp flags */ - uint8_t tcp_flags; - /* number of packets */ - unsigned long pkts; - /* sum of packets sizes */ - unsigned long size; - /* fragment data size (for fragmented packets) */ - unsigned long sizeF; - /* whole packet data size (for fragmented packets) */ - unsigned long sizeP; - /* time of creation/flushing this flow */ - struct Time ctime; - /* time of last modification this flow */ - struct Time mtime; -#define FLOW_FRAG 0x0001 -#define FLOW_FRAGMASK 0x0003 -#define FLOW_TL 0x0004 -#define FLOW_LASTFRAG 0x0008 -#define FLOW_PENDING 0x8000 - int flags; - struct Flow *next; -}; - -struct Flow_F { - /* input interface */ - uint16_t iif; - /* output interface */ - uint16_t oif; - /* ip src address */ - struct in_addr sip; - /* ip dst address */ - struct in_addr dip; - /* ip protocol */ - uint8_t proto; - /* ip fragment id */ - uint16_t id; -}; - -struct Flow_TL { - /* input interface */ - uint16_t iif; - /* output interface */ - uint16_t oif; - /* ip src address */ - struct in_addr sip; - /* ip dst address */ - struct in_addr dip; - /* ip protocol */ - uint8_t proto; - /* ip fragment id */ - uint16_t id; - /* tcp/udp src port or icmp message type */ - uint16_t sp; - /* tcp/udp dst port or icmp type sub-code */ - uint16_t dp; -}; - -#define SIGALRM_MASK 1 -#define SIGTERM_MASK 2 -#define SIGUSR1_MASK 4 - -struct peer { - int write_fd; - struct sockaddr_in addr; - struct sockaddr_in laddr; - int type; - uint32_t seq; - int fd; -}; - -struct snmp_rule { - char basename[IFNAMSIZ]; - int len; - int base; -} snmp_rule_t; - -#define PEER_MIRROR 0 -#define PEER_ROTATE 1 -#define PEER_FILE 2 - -#endif diff --git a/trunk/src/fprobe-ulog.h.old b/trunk/src/fprobe-ulog.h.old deleted file mode 100644 index bbfd349..0000000 --- a/trunk/src/fprobe-ulog.h.old +++ /dev/null @@ -1,130 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: fprobe-ulog.h,v 1.1.2.3 2005/01/29 19:30:41 sla Exp $ -*/ - -#ifndef _FPROBE_ULOG_H_ -#define _FPROBE_ULOG_H_ - -#include - -#ifndef IP_OFFMASK -#define IP_OFFMASK 0x1fff -#endif - -#define SCHED SCHED_FIFO -#define EMIT_TIMEOUT 5 -#define UNPENDING_TIMEOUT 5 -#define CAPTURE_SIZE 131072 -#define THREADS 5 -#define COPY_INTO 0 -#define MOVE_INTO 1 - -struct Time { - time_t sec; - long usec; -}; - -struct Flow { - /* input interface */ - uint16_t iif; - /* output interface */ - uint16_t oif; - /* ip src address */ - struct in_addr sip; - /* ip dst address */ - struct in_addr dip; - /* ip protocol */ - uint8_t proto; - /* ip fragment id */ - uint16_t id; - /* tcp/udp src port or icmp message type */ - uint16_t sp; - /* tcp/udp dst port or icmp type sub-code */ - uint16_t dp; - /* ip ToS */ - uint8_t tos; - /* tcp flags */ - uint8_t tcp_flags; - /* number of packets */ - unsigned long pkts; - /* sum of packets sizes */ - unsigned long size; - /* fragment data size (for fragmented packets) */ - unsigned long sizeF; - /* whole packet data size (for fragmented packets) */ - unsigned long sizeP; - /* time of creation/flushing this flow */ - struct Time ctime; - /* time of last modification this flow */ - struct Time mtime; -#define FLOW_FRAG 0x0001 -#define FLOW_FRAGMASK 0x0003 -#define FLOW_TL 0x0004 -#define FLOW_LASTFRAG 0x0008 -#define FLOW_PENDING 0x8000 - int flags; - struct Flow *next; -}; - -struct Flow_F { - /* input interface */ - uint16_t iif; - /* output interface */ - uint16_t oif; - /* ip src address */ - struct in_addr sip; - /* ip dst address */ - struct in_addr dip; - /* ip protocol */ - uint8_t proto; - /* ip fragment id */ - uint16_t id; -}; - -struct Flow_TL { - /* input interface */ - uint16_t iif; - /* output interface */ - uint16_t oif; - /* ip src address */ - struct in_addr sip; - /* ip dst address */ - struct in_addr dip; - /* ip protocol */ - uint8_t proto; - /* ip fragment id */ - uint16_t id; - /* tcp/udp src port or icmp message type */ - uint16_t sp; - /* tcp/udp dst port or icmp type sub-code */ - uint16_t dp; -}; - -#define SIGALRM_MASK 1 -#define SIGTERM_MASK 2 -#define SIGUSR1_MASK 4 - -struct peer { - int sock; - struct sockaddr_in addr; - struct sockaddr_in laddr; - int type; - uint32_t seq; - int fd; -}; - -struct snmp_rule { - char basename[IFNAMSIZ]; - int len; - int base; -} snmp_rule_t; - -#define PEER_MIRROR 0 -#define PEER_ROTATE 1 - -#endif diff --git a/trunk/src/hash.c b/trunk/src/hash.c deleted file mode 100644 index 15a62ed..0000000 --- a/trunk/src/hash.c +++ /dev/null @@ -1,94 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: hash.c,v 1.3.2.2.2.1 2005/01/29 19:30:41 sla Exp $ -*/ - -#include - -#include -#include -#include -#include -#include - -#include - - -#ifdef HASH_TYPE_CRC -static uint16_t crc16_poly; -static uint8_t shuffle_table[256]; -static uint16_t crc16_table[256]; - -uint16_t crc16(uint16_t crc, uint8_t val) -{ - int i; - - crc ^= val << 8; - for (i = 8; i--; ) - crc = crc & 0x8000 ? (crc << 1) ^ crc16_poly : crc << 1; - return crc; -} -#endif - -hash_t hash(void *p, int size) -{ - /* - ?FIXME? - Check for valid size (> 0) - */ - - hash_t hash = 0; - -#if defined HASH_TYPE_XOR && HASH_BITS == 16 - if (size & 1) hash = *((uint8_t *) p++); - size >>= 1; -#endif - - for (;size--;) { -#ifdef HASH_TYPE_XOR - hash ^= *((hash_t *) p++); -# if HASH_BITS == 16 - p++; -# endif -#endif -#ifdef HASH_TYPE_CRC - hash = crc16_table[shuffle_table[*((uint8_t *) p++)] \ - ^ (hash >> 8)] ^ (hash << 8); -#endif - } - return hash; -} - -void hash_init() -{ - -#ifdef HASH_TYPE_CRC - int rnd, i, j, m; - FILE *rnddev; - - if ((rnddev = fopen(RNDDEV, "r"))) { - fcntl(fileno(rnddev), F_SETFL, \ - fcntl(fileno(rnddev), F_GETFL) | O_NONBLOCK); - fread(&rnd, sizeof(rnd), 1, rnddev); - fclose(rnddev); - } - srand(time(NULL) ^ getpid() ^ rnd); - crc16_poly = rand() | 1; - - for (i = 0; i < 256; i++) { - crc16_table[i] = crc16(0, i); - shuffle_table[i] = i; - } - - for (i = 0; i < 256; i++) { - j = (int) (256.0 * rand() / (RAND_MAX + 1.0)); - m = shuffle_table[i]; - shuffle_table[i] = shuffle_table[j]; - shuffle_table[j] = m; - } -#endif -} diff --git a/trunk/src/hash.h b/trunk/src/hash.h deleted file mode 100644 index 31fb325..0000000 --- a/trunk/src/hash.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: hash.h,v 1.1.1.1.2.3.2.1 2005/01/29 19:30:41 sla Exp $ -*/ - -#ifndef _HASH_H_ -#define _HASH_H_ - -#ifndef HASH_TYPE_XOR -# ifndef HASH_TYPE_CRC -# error HASH_TYPE_XOR or HASH_TYPE_CRC must be defined -# endif -#else -# ifdef HASH_TYPE_CRC -# error HASH_TYPE_XOR or HASH_TYPE_CRC must be defined -# endif -#endif - -#if HASH_BITS != 16 -# ifdef HASH_TYPE_CRC -# error illegal value in HASH_BITS -# endif -# if HASH_BITS != 8 -# error illegal value in HASH_BITS -# endif -#endif - -#include - -#if HASH_BITS == 8 -typedef uint8_t hash_t; -#endif - -#if HASH_BITS == 16 -typedef uint16_t hash_t; -#endif - -#define CRC16_POLY 0x8005 - -#ifndef RNDDEV -# define RNDDEV "/dev/random" -#endif - -uint16_t crc16(uint16_t, uint8_t); -hash_t hash(void *, int); -void hash_init(); - -#endif diff --git a/trunk/src/libipulog/Makefile b/trunk/src/libipulog/Makefile deleted file mode 100644 index 2910065..0000000 --- a/trunk/src/libipulog/Makefile +++ /dev/null @@ -1,378 +0,0 @@ -# Makefile.in generated by automake 1.9.4 from Makefile.am. -# src/libipulog/Makefile. Generated from Makefile.in by configure. - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - - - -SOURCES = $(libipulog_a_SOURCES) - -srcdir = . -top_srcdir = ../.. - -pkgdatadir = $(datadir)/fprobe-ulog -pkglibdir = $(libdir)/fprobe-ulog -pkgincludedir = $(includedir)/fprobe-ulog -top_builddir = ../.. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = /bin/install -c -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = i686-pc-linux-gnu -host_triplet = i686-pc-linux-gnu -target_triplet = i686-pc-linux-gnu -subdir = src/libipulog -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -LIBRARIES = $(noinst_LIBRARIES) -AR = ar -ARFLAGS = cru -libipulog_a_AR = $(AR) $(ARFLAGS) -libipulog_a_LIBADD = -am_libipulog_a_OBJECTS = libipulog.$(OBJEXT) -libipulog_a_OBJECTS = $(am_libipulog_a_OBJECTS) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -depcomp = -am__depfiles_maybe = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SOURCES = $(libipulog_a_SOURCES) -DIST_SOURCES = $(libipulog_a_SOURCES) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run aclocal-1.9 -AMDEP_FALSE = # -AMDEP_TRUE = -AMTAR = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run tar -AUTOCONF = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoconf -AUTOHEADER = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run autoheader -AUTOMAKE = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run automake-1.9 -AWK = gawk -CC = gcc -CCDEPMODE = depmode=none -CFLAGS = -g -O2 -D_BSD_SOURCE -D_REENTRANT -DWALL -W -Wall -CPP = gcc -E -CPPFLAGS = -CYGPATH_W = echo -DATE = 2007-10-26 -DEFS = -DHAVE_CONFIG_H -DEPDIR = .deps -ECHO_C = -ECHO_N = -n -ECHO_T = -EGREP = grep -E -EXEEXT = -INSTALL_DATA = ${INSTALL} -m 644 -INSTALL_PROGRAM = ${INSTALL} -INSTALL_SCRIPT = ${INSTALL} -INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s -LDFLAGS = -LIBOBJS = -LIBS = -lpthread -LTLIBOBJS = -MAKEINFO = ${SHELL} /home/sapan/fprobe-ulog-1.1/missing --run makeinfo -OBJEXT = o -PACKAGE = fprobe-ulog -PACKAGE_BUGREPORT = -PACKAGE_NAME = -PACKAGE_STRING = -PACKAGE_TARNAME = -PACKAGE_VERSION = -PATH_SEPARATOR = : -RANLIB = ranlib -SET_MAKE = -SHELL = /bin/sh -STRIP = -VERSION = 1.1 -ac_ct_CC = gcc -ac_ct_RANLIB = ranlib -ac_ct_STRIP = -am__fastdepCC_FALSE = -am__fastdepCC_TRUE = # -am__include = include -am__leading_dot = . -am__quote = -am__tar = ${AMTAR} chof - "$$tardir" -am__untar = ${AMTAR} xf - -bindir = ${exec_prefix}/bin -build = i686-pc-linux-gnu -build_alias = -build_cpu = i686 -build_os = linux-gnu -build_vendor = pc -datadir = ${prefix}/share -exec_prefix = ${prefix} -host = i686-pc-linux-gnu -host_alias = -host_cpu = i686 -host_os = linux-gnu -host_vendor = pc -includedir = ${prefix}/include -infodir = ${prefix}/info -install_sh = /home/sapan/fprobe-ulog-1.1/install-sh -libdir = ${exec_prefix}/lib -libexecdir = ${exec_prefix}/libexec -localstatedir = ${prefix}/var -mandir = ${prefix}/man -mkdir_p = mkdir -p -- -oldincludedir = /usr/include -prefix = /usr/local -program_transform_name = s,x,x, -sbindir = ${exec_prefix}/sbin -sharedstatedir = ${prefix}/com -sysconfdir = ${prefix}/etc -target = i686-pc-linux-gnu -target_alias = -target_cpu = i686 -target_os = linux-gnu -target_vendor = pc -INCLUDES = -I$(top_srcdir)/src/libipulog/include -noinst_LIBRARIES = libipulog.a -libipulog_a_SOURCES = libipulog.c -EXTRA_DIST = include/libipulog/libipulog.h -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu --ignore-deps src/libipulog/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu --ignore-deps src/libipulog/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -libipulog.a: $(libipulog_a_OBJECTS) $(libipulog_a_DEPENDENCIES) - -rm -f libipulog.a - $(libipulog_a_AR) libipulog.a $(libipulog_a_OBJECTS) $(libipulog_a_LIBADD) - $(RANLIB) libipulog.a - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -.c.o: - $(COMPILE) -c $< - -.c.obj: - $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/include/libipulog - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(LIBRARIES) -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-noinstLIBRARIES ctags distclean distclean-compile \ - distclean-generic distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-exec install-exec-am install-info \ - install-info-am install-man install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-info-am - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/trunk/src/libipulog/Makefile.am b/trunk/src/libipulog/Makefile.am deleted file mode 100644 index 67a0b2f..0000000 --- a/trunk/src/libipulog/Makefile.am +++ /dev/null @@ -1,6 +0,0 @@ -INCLUDES = -I$(top_srcdir)/src/libipulog/include - -noinst_LIBRARIES = libipulog.a -libipulog_a_SOURCES = libipulog.c - -EXTRA_DIST = include/libipulog/libipulog.h diff --git a/trunk/src/libipulog/Makefile.in b/trunk/src/libipulog/Makefile.in deleted file mode 100644 index 2a51f48..0000000 --- a/trunk/src/libipulog/Makefile.in +++ /dev/null @@ -1,378 +0,0 @@ -# Makefile.in generated by automake 1.9.4 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -SOURCES = $(libipulog_a_SOURCES) - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -target_triplet = @target@ -subdir = src/libipulog -DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -LIBRARIES = $(noinst_LIBRARIES) -AR = ar -ARFLAGS = cru -libipulog_a_AR = $(AR) $(ARFLAGS) -libipulog_a_LIBADD = -am_libipulog_a_OBJECTS = libipulog.$(OBJEXT) -libipulog_a_OBJECTS = $(am_libipulog_a_OBJECTS) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -depcomp = -am__depfiles_maybe = -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -SOURCES = $(libipulog_a_SOURCES) -DIST_SOURCES = $(libipulog_a_SOURCES) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DATE = @DATE@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LTLIBOBJS = @LTLIBOBJS@ -MAKEINFO = @MAKEINFO@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -RANLIB = @RANLIB@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -VERSION = @VERSION@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -datadir = @datadir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -sysconfdir = @sysconfdir@ -target = @target@ -target_alias = @target_alias@ -target_cpu = @target_cpu@ -target_os = @target_os@ -target_vendor = @target_vendor@ -INCLUDES = -I$(top_srcdir)/src/libipulog/include -noinst_LIBRARIES = libipulog.a -libipulog_a_SOURCES = libipulog.c -EXTRA_DIST = include/libipulog/libipulog.h -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu --ignore-deps src/libipulog/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu --ignore-deps src/libipulog/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -clean-noinstLIBRARIES: - -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) -libipulog.a: $(libipulog_a_OBJECTS) $(libipulog_a_DEPENDENCIES) - -rm -f libipulog.a - $(libipulog_a_AR) libipulog.a $(libipulog_a_OBJECTS) $(libipulog_a_LIBADD) - $(RANLIB) libipulog.a - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -.c.o: - $(COMPILE) -c $< - -.c.obj: - $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/include/libipulog - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: Makefile $(LIBRARIES) -installdirs: -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-noinstLIBRARIES ctags distclean distclean-compile \ - distclean-generic distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-data \ - install-data-am install-exec install-exec-am install-info \ - install-info-am install-man install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-info-am - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/trunk/src/libipulog/include/libipulog/libipulog.h b/trunk/src/libipulog/include/libipulog/libipulog.h deleted file mode 100644 index 13796e6..0000000 --- a/trunk/src/libipulog/include/libipulog/libipulog.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef _LIBIPULOG_H -#define _LIBIPULOG_H - -/* $Id: libipulog.h,v 1.1.2.1 2004/08/13 21:03:11 sla Exp $ */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* FIXME: glibc sucks */ -#ifndef MSG_TRUNC -#define MSG_TRUNC 0x20 -#endif - -struct ipulog_handle; -extern int ipulog_errno; - -u_int32_t ipulog_group2gmask(u_int32_t group); - -struct ipulog_handle *ipulog_create_handle(u_int32_t gmask, u_int32_t rmem); - -void ipulog_destroy_handle(struct ipulog_handle *h); - -ssize_t ipulog_read(struct ipulog_handle *h, - unsigned char *buf, size_t len, int timeout); - -ulog_packet_msg_t *ipulog_get_packet(struct ipulog_handle *h, - const unsigned char *buf, - size_t len); - -char *ipulog_strerror(int errcode); - -void ipulog_perror(const char *s); - -enum -{ - IPULOG_ERR_NONE = 0, - IPULOG_ERR_IMPL, - IPULOG_ERR_HANDLE, - IPULOG_ERR_SOCKET, - IPULOG_ERR_BIND, - IPULOG_ERR_RECVBUF, - IPULOG_ERR_RECV, - IPULOG_ERR_NLEOF, - IPULOG_ERR_TRUNC, - IPULOG_ERR_INVGR, - IPULOG_ERR_INVNL, -}; -#define IPULOG_MAXERR IPULOG_ERR_INVNL - -#endif /* _LIBULOG_H */ diff --git a/trunk/src/libipulog/libipulog.c b/trunk/src/libipulog/libipulog.c deleted file mode 100644 index 28ca44d..0000000 --- a/trunk/src/libipulog/libipulog.c +++ /dev/null @@ -1,255 +0,0 @@ -/* - * libipulog.c, $Revision: 1.1.2.1 $ - * - * netfilter ULOG userspace library. - * - * (C) 2000-2001 by Harald Welte - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 - * as published by the Free Software Foundation - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * This library is still under development, so be aware of sudden interface - * changes - * - * $Id: libipulog.c,v 1.1.2.1 2004/08/13 21:03:10 sla Exp $ - */ - -#include -#include -#include -#include -#include -#include - -struct ipulog_handle -{ - int fd; - u_int8_t blocking; - struct sockaddr_nl local; - struct sockaddr_nl peer; - struct nlmsghdr* last_nlhdr; -}; - -/* internal */ - - -int ipulog_errno = IPULOG_ERR_NONE; - -struct ipulog_errmap_t -{ - int errcode; - char *message; -} ipulog_errmap[] = -{ - { IPULOG_ERR_NONE, "No error" }, - { IPULOG_ERR_IMPL, "Not implemented yet" }, - { IPULOG_ERR_HANDLE, "Unable to create netlink handle" }, - { IPULOG_ERR_SOCKET, "Unable to create netlink socket" }, - { IPULOG_ERR_BIND, "Unable to bind netlink socket" }, - { IPULOG_ERR_RECVBUF, "Receive buffer size invalid" }, - { IPULOG_ERR_RECV, "Error during netlink receive" }, - { IPULOG_ERR_NLEOF, "Received EOF on netlink socket" }, - { IPULOG_ERR_TRUNC, "Receive message truncated" }, - { IPULOG_ERR_INVGR, "Invalid group specified" }, - { IPULOG_ERR_INVNL, "Invalid netlink message" }, -}; - -static ssize_t -ipulog_netlink_recvfrom(const struct ipulog_handle *h, - unsigned char *buf, size_t len) -{ - int addrlen, status; - struct nlmsghdr *nlh; - - if (len < sizeof(struct nlmsgerr)) { - ipulog_errno = IPULOG_ERR_RECVBUF; - return -1; - } - addrlen = sizeof(h->peer); - status = recvfrom(h->fd, buf, len, 0, (struct sockaddr *)&h->peer, - &addrlen); - if (status < 0) - { - ipulog_errno = IPULOG_ERR_RECV; - return status; - } - if (addrlen != sizeof (h->peer)) - { - ipulog_errno = IPULOG_ERR_RECV; - return -1; - } - if (status == 0) - { - ipulog_errno = IPULOG_ERR_NLEOF; - return -1; - } - nlh = (struct nlmsghdr *)buf; - if (nlh->nlmsg_flags & MSG_TRUNC || status > len) - { - ipulog_errno = IPULOG_ERR_TRUNC; - return -1; - } - return status; -} - -/* public */ - -char *ipulog_strerror(int errcode) -{ - if (errcode < 0 || errcode > IPULOG_MAXERR) - errcode = IPULOG_ERR_IMPL; - return ipulog_errmap[errcode].message; -} - -/* convert a netlink group (1-32) to a group_mask suitable for create_handle */ -u_int32_t ipulog_group2gmask(u_int32_t group) -{ - if (group < 1 || group > 32) - { - ipulog_errno = IPULOG_ERR_INVGR; - return 0; - } - return (1 << (group - 1)); -} - -/* create a ipulog handle for the reception of packets sent to gmask */ -struct ipulog_handle *ipulog_create_handle(u_int32_t gmask, - u_int32_t rcvbufsize) -{ - struct ipulog_handle *h; - int status; - - h = (struct ipulog_handle *) malloc(sizeof(struct ipulog_handle)); - if (h == NULL) - { - ipulog_errno = IPULOG_ERR_HANDLE; - return NULL; - } - memset(h, 0, sizeof(struct ipulog_handle)); - h->fd = socket(PF_NETLINK, SOCK_RAW, NETLINK_NFLOG); - if (h->fd == -1) - { - ipulog_errno = IPULOG_ERR_SOCKET; - close(h->fd); - free(h); - return NULL; - } - memset(&h->local, 0, sizeof(struct sockaddr_nl)); - h->local.nl_family = AF_NETLINK; - h->local.nl_pid = getpid(); - h->local.nl_groups = gmask; - status = bind(h->fd, (struct sockaddr *)&h->local, sizeof(h->local)); - if (status == -1) - { - ipulog_errno = IPULOG_ERR_BIND; - close(h->fd); - free(h); - return NULL; - } - memset(&h->peer, 0, sizeof(struct sockaddr_nl)); - h->peer.nl_family = AF_NETLINK; - h->peer.nl_pid = 0; - h->peer.nl_groups = gmask; - - status = setsockopt(h->fd, SOL_SOCKET, SO_RCVBUF, &rcvbufsize, - sizeof(rcvbufsize)); - if (status == -1) - { - ipulog_errno = IPULOG_ERR_RECVBUF; - close(h->fd); - free(h); - return NULL; - } - - return h; -} - -/* destroy a ipulog handle */ -void ipulog_destroy_handle(struct ipulog_handle *h) -{ - close(h->fd); - free(h); -} - -#if 0 -int ipulog_set_mode() -{ -} -#endif - -/* do a BLOCKING read on an ipulog handle */ -ssize_t ipulog_read(struct ipulog_handle *h, unsigned char *buf, - size_t len, int timeout) -{ - return ipulog_netlink_recvfrom(h, buf, len); -} - -/* get a pointer to the actual start of the ipulog packet, - use this to strip netlink header */ -ulog_packet_msg_t *ipulog_get_packet(struct ipulog_handle *h, - const unsigned char *buf, - size_t len) -{ - struct nlmsghdr *nlh; - size_t remain_len; - - /* if last header in handle not inside this buffer, - * drop reference to last header */ - if ((unsigned char *)h->last_nlhdr > (buf + len) || - (unsigned char *)h->last_nlhdr < buf) { - h->last_nlhdr = NULL; - } - - if (!h->last_nlhdr) { - /* fist message in buffer */ - nlh = (struct nlmsghdr *) buf; - if (!NLMSG_OK(nlh, len)) { - /* ERROR */ - ipulog_errno = IPULOG_ERR_INVNL; - return NULL; - } - } else { - /* we are in n-th part of multilink message */ - if (h->last_nlhdr->nlmsg_type == NLMSG_DONE || - !(h->last_nlhdr->nlmsg_flags & NLM_F_MULTI)) { - /* if last part in multilink message, - * or no multipart message at all: return */ - h->last_nlhdr = NULL; - return NULL; - } - - /* calculate remaining lenght from lasthdr to end of buffer */ - remain_len = (len - - ((unsigned char *)h->last_nlhdr - buf)); - nlh = NLMSG_NEXT(h->last_nlhdr, remain_len); - } - - h->last_nlhdr = nlh; - - return NLMSG_DATA(nlh); -} - -/* print a human readable description of the last error to stderr */ -void ipulog_perror(const char *s) -{ - if (s) - fputs(s, stderr); - else - fputs("ERROR", stderr); - if (ipulog_errno) - fprintf(stderr, ": %s", ipulog_strerror(ipulog_errno)); - if (errno) - fprintf(stderr, ": %s", strerror(errno)); - fputc('\n', stderr); -} - diff --git a/trunk/src/mem.c b/trunk/src/mem.c deleted file mode 100644 index 90ca516..0000000 --- a/trunk/src/mem.c +++ /dev/null @@ -1,167 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: mem.c,v 1.4.2.2.2.1 2005/01/29 19:30:41 sla Exp $ -*/ - -#include -#include -#include - -#include -#include -#include - -#ifdef MEM_THREADSAFE -#include -#endif - -#ifdef MEM_THREADSAFE -static pthread_mutex_t mem_mutex = PTHREAD_MUTEX_INITIALIZER; -#endif -static struct Mem *root; -unsigned int total_elements; -unsigned int free_elements; -static unsigned int element_size; -static unsigned int bulk_quantity; -static unsigned int limit_memory; -unsigned int total_memory; -static unsigned int mem_index_table_size; -static unsigned int element_table_size; -static unsigned int malloc_size; - -void *mem_alloc() -{ - unsigned int i; - struct Mem *mptr; - mem_index_t *iptr; -#if MEM_BITS == 0 - void *eptr; -#endif - -#ifdef MEM_THREADSAFE - pthread_mutex_lock(&mem_mutex); -#endif - if (!free_elements) { - if (limit_memory && (total_memory + malloc_size) > limit_memory) { -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: limit exhausted"); -#endif - mptr = 0; - errno = ENOMEM; - goto done; - } - if (!(mptr = calloc(malloc_size, 1))) goto done; - iptr = (void *) mptr + sizeof(struct Mem); -#if MEM_BITS == 0 - eptr = (void *) iptr + mem_index_table_size; -#endif - for (i = 0; i < bulk_quantity; i++) { -#if MEM_BITS == 0 - *iptr++ = eptr; - eptr += element_size; -#else - *iptr++ = i; -#endif - } - mptr->free = bulk_quantity - 1; - free_elements += mptr->free; - total_elements += bulk_quantity; - total_memory += malloc_size; - mptr->first = iptr; - mptr->last = (void *) iptr + element_table_size - element_size; - mptr->next = root; - root = mptr; -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: alloc bulk: base:%x first:%x last:%x", - mptr, mptr->first, mptr->last); - my_log(LOG_DEBUG, "M: mem: total: %d (%dKB), free: %d", - total_elements, total_memory >> 10, free_elements); -#endif - mptr = mptr->last; - goto done; - } - - mptr = root; - while (mptr->free == 0) mptr = mptr->next; - mptr->free--; - free_elements--; - iptr = (void *) mptr + sizeof(struct Mem); -#if MEM_BITS == 0 - mptr = iptr[mptr->free]; -#else - mptr = mptr->first + iptr[mptr->free] * element_size; -#endif - -done: -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: alloc: %x", mptr); -#endif -#ifdef MEM_THREADSAFE - pthread_mutex_unlock(&mem_mutex); -#endif - return mptr; -} - -void mem_free(void *eptr) -{ - mem_index_t *iptr; - struct Mem *mptr, **pptr; - -#ifdef MEM_THREADSAFE - pthread_mutex_lock(&mem_mutex); -#endif -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: free: %x", eptr); -#endif - mptr = root; - pptr = &root; - while (mptr->first > eptr || mptr->last < eptr) { - pptr = &mptr->next; - mptr = mptr->next; - } - iptr = (void *) mptr + sizeof(struct Mem); -#if MEM_BITS == 0 - iptr[mptr->free] = eptr; -#else - iptr[mptr->free] = (eptr - mptr->first) / element_size; -#endif - mptr->free++; - free_elements++; - if (mptr->free == bulk_quantity) { -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: free bulk: base:%x first:%x last:%x", - mptr, mptr->first, mptr->last); -#endif - *pptr = mptr->next; - free(mptr); - total_elements -= bulk_quantity; - free_elements -= bulk_quantity; - total_memory -= malloc_size; -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: mem: total: %d (%dKB), free: %d", - total_elements, total_memory >> 10, free_elements); -#endif - } -#ifdef MEM_THREADSAFE - pthread_mutex_unlock(&mem_mutex); -#endif -} - -int mem_init(unsigned int element, unsigned int bulk, unsigned int limit) -{ - bulk_quantity = (unsigned) (mem_index_t) bulk; /* for safety: movzbl, movzwl */ - mem_index_table_size = sizeof(mem_index_t) * bulk_quantity; - element_size = element; - element_table_size = element_size * bulk_quantity; - malloc_size = sizeof(struct Mem) + mem_index_table_size + element_table_size; - limit_memory = limit; -#if ((DEBUG) & DEBUG_M) - my_log(LOG_DEBUG, "M: init: element size:%d quantity:%d bulk size:%d limit:%d", - element_size, bulk_quantity, malloc_size, limit_memory); -#endif - return 0; -} diff --git a/trunk/src/mem.h b/trunk/src/mem.h deleted file mode 100644 index 9930761..0000000 --- a/trunk/src/mem.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: mem.h,v 1.1.1.1.2.3 2004/08/13 20:40:43 sla Exp $ -*/ - -#ifndef _MEM_H_ -#define _MEM_H_ - -#if MEM_BITS != 0 && MEM_BITS != 8 && MEM_BITS != 16 -#error illegal value in MEM_BITS -#endif - -#if defined _REENTRANT || defined _THREAD_SAFE -#define MEM_THREADSAFE -#endif - -#include - -#if MEM_BITS == 0 -typedef void* mem_index_t; -#endif -#if MEM_BITS == 8 -typedef uint8_t mem_index_t; -#endif -#if MEM_BITS == 16 -typedef uint16_t mem_index_t; -#endif - -void *mem_alloc(); -void mem_free(void *); -int mem_init(unsigned int, unsigned int, unsigned int); - -struct Mem { - struct Mem *next; - unsigned int free; - void *first; - void *last; - /* - mem_index_t mem_index_table[bulk_quantity] - struct UserDef element_table[bulk_quantity] - */ -}; - -#endif diff --git a/trunk/src/my_getopt.c b/trunk/src/my_getopt.c deleted file mode 100644 index d0a9fd7..0000000 --- a/trunk/src/my_getopt.c +++ /dev/null @@ -1,79 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: my_getopt.c,v 1.2.2.3 2004/02/02 08:06:24 sla Exp $ -*/ - -#include - -/* getopt() */ -#include - -/* fprintf() */ -#include - -#include - -extern char *optarg; -extern int optind, opterr, optopt; - -int my_getopt(int argc, char * const argv[], - struct getopt_parms parms[]) -{ - int c, i, p; - static int flag = 0, my_opterr = 1; - static char optstring[MY_GETOPT_MAX_OPTSTR]; - - if (flag++ == 0) { - p = 0; i = 0; - while ((parms[i].name != 0) && (p < (MY_GETOPT_MAX_OPTSTR - 1))) { - optstring[p++] = parms[i].name; - if (parms[i].flag & MY_GETOPT_ARG_REQUIRED) optstring[p++] = ':'; - optstring[p] = 0; - i++; - } - flag = 1; - } - - c = getopt(argc, argv, optstring); - switch (c) { - case '?': - if (my_opterr) fprintf(stderr, "Wrong parameters\n"); - break; - - case -1: - flag = 0; - i = 0; - while (parms[i].name != 0) { - if ((parms[i].flag & MY_GETOPT_REQUIRED) && (parms[i].count == 0)) { - if (my_opterr) fprintf(stderr, "Missing required option\n"); - return '?'; - } - i++; - } - break; - - default: - i = 0; - while ((parms[i].name != 0) && (parms[i].name != c)) { - i++; - } - if (parms[i].flag & MY_GETOPT_ARG_REQUIRED) { - if (optarg == 0) { - if (my_opterr) fprintf(stderr, "Option `-%c': %s\n", - c, "require parameter"); - return '?'; - } else parms[i].arg = optarg; - } - if ((++parms[i].count > 1) && !(parms[i].flag & MY_GETOPT_ALLOW_REPEAT)) { - if (my_opterr) fprintf(stderr, "Option `-%c': %s\n", - c, "repeat not allowed"); - return '?'; - } - break; - } - return c; -} diff --git a/trunk/src/my_getopt.h b/trunk/src/my_getopt.h deleted file mode 100644 index e8f8d1f..0000000 --- a/trunk/src/my_getopt.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: my_getopt.h,v 1.1.1.1.2.3 2004/02/02 08:06:24 sla Exp $ -*/ - -#ifndef _MY_GETOPT_H_ -#define _MY_GETOPT_H_ - -#define MY_GETOPT_ARG_REQUIRED 0x1 -#define MY_GETOPT_REQUIRED 0x2 -#define MY_GETOPT_ALLOW_REPEAT 0x4 - -#define MY_GETOPT_MAX_OPTSTR 4096 - -struct getopt_parms { - char name; - int flag; - int count; - char *arg; -}; - -int my_getopt(int argc, char * const argv[], struct getopt_parms parms[]); - -#endif diff --git a/trunk/src/my_inttypes.h b/trunk/src/my_inttypes.h deleted file mode 100644 index eec2ef5..0000000 --- a/trunk/src/my_inttypes.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: my_inttypes.h,v 1.1.2.1 2004/08/13 20:41:19 sla Exp $ -*/ - -#ifndef _MY_INTTYPES_H_ -#define _MY_INTTYPES_H_ - -#include - -#ifdef HAVE_INTTYPES_H -#include -#else - -typedef unsigned char uint8_t; -typedef signed char int8_t; - -typedef unsigned short uint16_t; -typedef short int16_t; - -#if SIZEOF_INT == 4 -typedef unsigned int uint32_t; -typedef int int32_t; -#else -#if SIZEOF_LONG == 4 -typedef unsigned long uint32_t; -typedef long int32_t; -#else -#error "Can't find any 32 bit type" -#endif -#endif - -#if SIZEOF_LONG == 8 -typedef unsigned long uint64_t; -typedef long int64_t; -#else -#if SIZEOF_LONG_LONG == 8 -typedef unsigned long long uint64_t; -typedef long long int64_t; -#else -#error "Can't find any 64 bit type" -#endif -#endif - -#endif /* HAVE_INTTYPES_H */ - -#endif /* _MY_INTTYPES_H_ */ diff --git a/trunk/src/my_log.c b/trunk/src/my_log.c deleted file mode 100644 index b324f8f..0000000 --- a/trunk/src/my_log.c +++ /dev/null @@ -1,57 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: my_log.c,v 1.3.2.2 2004/02/02 08:06:24 sla Exp $ -*/ - -#include - -#include -#include -#include -#include - -#include - -static char *my_log_indent; -static unsigned my_log_min_level; -static unsigned my_log_flags; -static char *my_log_names[] = { - "EMERG", "ALERT", "CRIT", "ERR", "WARNING", "NOTICE", "INFO", "DEBUG" -}; - -void my_log_open(char *indent, unsigned min_level, unsigned flags) -{ - my_log_indent = indent; - my_log_min_level = min_level; - my_log_flags = flags; - //openlog(0, LOG_PID, MY_LOG_SYSLOG_FACILITY); - openlog(my_log_indent, 0, MY_LOG_SYSLOG_FACILITY); -} - -void my_log_close(void) -{ - closelog(); -} - -void my_log(unsigned level, const char *format, ...) -{ - va_list args; - char msg[256]; - char msg_prefix[64]; - - if (level <= my_log_min_level) { - va_start(args, format); - vsnprintf(msg, sizeof(msg), format, args); - snprintf(msg_prefix, sizeof(msg_prefix), "[%s]: ", my_log_names[level]); - - if (my_log_flags & MY_LOG_SYSLOG) - syslog(level, "%s%s", msg_prefix, msg); - - if (my_log_flags & MY_LOG_STDOUT) - fprintf(stdout, "%s%s\n", msg_prefix, msg); - } -} diff --git a/trunk/src/my_log.h b/trunk/src/my_log.h deleted file mode 100644 index 6269f72..0000000 --- a/trunk/src/my_log.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: my_log.h,v 1.1.1.1.2.2 2004/02/02 08:06:24 sla Exp $ -*/ - -#ifndef _MY_LOG_H_ -#define _MY_LOG_H_ - -#define MY_LOG_SYSLOG 0x01 -#define MY_LOG_STDOUT 0x02 -#define MY_LOG_SYSLOG_FACILITY LOG_DAEMON -#define MY_LOG_MAX_INDEX 32 - -#include - -void my_log_open(char *, unsigned, unsigned); -void my_log_close(void); -void my_log(unsigned, const char *, ...); - -#endif diff --git a/trunk/src/netflow.c b/trunk/src/netflow.c deleted file mode 100644 index 3e5435e..0000000 --- a/trunk/src/netflow.c +++ /dev/null @@ -1,145 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: netflow.c,v 1.2.2.4 2004/02/02 08:06:24 sla Exp $ -*/ - -#include - -#include - -static uint16_t NetFlow1_Header[] = { - NETFLOW_VERSION, - NETFLOW_COUNT, - NETFLOW_UPTIME, - NETFLOW_UNIX_SECS, - NETFLOW_UNIX_NSECS -}; - -static uint16_t NetFlow1_Flow[] = { - NETFLOW_IPV4_SRC_ADDR, - NETFLOW_IPV4_DST_ADDR, - NETFLOW_IPV4_NEXT_HOP, - NETFLOW_INPUT_SNMP, - NETFLOW_OUTPUT_SNMP, - NETFLOW_PKTS_32, - NETFLOW_BYTES_32, - NETFLOW_FIRST_SWITCHED, - NETFLOW_LAST_SWITCHED, - NETFLOW_L4_SRC_PORT, - NETFLOW_L4_DST_PORT, - NETFLOW_PAD16, - NETFLOW_PROT, - NETFLOW_SRC_TOS, - NETFLOW_TCP_FLAGS, - NETFLOW_PAD8, NETFLOW_PAD8, NETFLOW_PAD8, - NETFLOW_PAD32 -}; - -static uint16_t NetFlow5_Header[] = { - NETFLOW_VERSION, - NETFLOW_COUNT, - NETFLOW_UPTIME, - NETFLOW_UNIX_SECS, - NETFLOW_UNIX_NSECS, - NETFLOW_FLOW_SEQUENCE, - NETFLOW_ENGINE_TYPE, - NETFLOW_ENGINE_ID, - NETFLOW_PAD16 -}; - -static uint16_t NetFlow5_Flow[] = { - NETFLOW_IPV4_SRC_ADDR, - NETFLOW_IPV4_DST_ADDR, - NETFLOW_IPV4_NEXT_HOP, - NETFLOW_INPUT_SNMP, - NETFLOW_OUTPUT_SNMP, - NETFLOW_PKTS_32, - NETFLOW_BYTES_32, - NETFLOW_FIRST_SWITCHED, - NETFLOW_LAST_SWITCHED, - NETFLOW_L4_SRC_PORT, - NETFLOW_L4_DST_PORT, - NETFLOW_PAD8, - NETFLOW_TCP_FLAGS, - NETFLOW_PROT, - NETFLOW_SRC_TOS, - NETFLOW_SRC_AS, - NETFLOW_DST_AS, - NETFLOW_SRC_MASK, - NETFLOW_DST_MASK, - NETFLOW_PAD16 -}; - -static uint16_t NetFlow7_Header[] = { - NETFLOW_VERSION, - NETFLOW_COUNT, - NETFLOW_UPTIME, - NETFLOW_UNIX_SECS, - NETFLOW_UNIX_NSECS, - NETFLOW_FLOW_SEQUENCE, - NETFLOW_PAD32 -}; - -static uint16_t NetFlow7_Flow[] = { - NETFLOW_IPV4_SRC_ADDR, - NETFLOW_IPV4_DST_ADDR, - NETFLOW_IPV4_NEXT_HOP, - NETFLOW_INPUT_SNMP, - NETFLOW_OUTPUT_SNMP, - NETFLOW_PKTS_32, - NETFLOW_BYTES_32, - NETFLOW_FIRST_SWITCHED, - NETFLOW_LAST_SWITCHED, - NETFLOW_L4_SRC_PORT, - NETFLOW_L4_DST_PORT, - NETFLOW_FLAGS7_1, - NETFLOW_TCP_FLAGS, - NETFLOW_PROT, - NETFLOW_SRC_TOS, - NETFLOW_SRC_AS, - NETFLOW_DST_AS, - NETFLOW_SRC_MASK, - NETFLOW_DST_MASK, - NETFLOW_FLAGS7_2, - NETFLOW_ROUTER_SC -}; - -struct NetFlow NetFlow1 = { - NETFLOW1_VERSION, - NETFLOW1_HEADER_SIZE, - NETFLOW1_MAX_FLOWS, - NETFLOW1_FLOW_SIZE, - NETFLOW1_SEQ_OFFSET, - sizeof(NetFlow1_Header) / sizeof(uint16_t), - NetFlow1_Header, - sizeof(NetFlow1_Flow) / sizeof(uint16_t), - NetFlow1_Flow -}; - -struct NetFlow NetFlow5 = { - NETFLOW5_VERSION, - NETFLOW5_HEADER_SIZE, - NETFLOW5_MAX_FLOWS, - NETFLOW5_FLOW_SIZE, - NETFLOW5_SEQ_OFFSET, - sizeof(NetFlow5_Header) / sizeof(uint16_t), - NetFlow5_Header, - sizeof(NetFlow5_Flow) / sizeof(uint16_t), - NetFlow5_Flow -}; - -struct NetFlow NetFlow7 = { - NETFLOW7_VERSION, - NETFLOW7_HEADER_SIZE, - NETFLOW7_MAX_FLOWS, - NETFLOW7_FLOW_SIZE, - NETFLOW7_SEQ_OFFSET, - sizeof(NetFlow7_Header) / sizeof(uint16_t), - NetFlow7_Header, - sizeof(NetFlow7_Flow) / sizeof(uint16_t), - NetFlow7_Flow -}; diff --git a/trunk/src/netflow.h b/trunk/src/netflow.h deleted file mode 100644 index e2ce3af..0000000 --- a/trunk/src/netflow.h +++ /dev/null @@ -1,245 +0,0 @@ -/* - Copyright (C) Slava Astashonok - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License. - - $Id: netflow.h,v 1.3.2.5.2.1 2004/08/13 21:03:10 sla Exp $ -*/ - -#ifndef _NETFLOW_H_ -#define _NETFLOW_H_ - -#include - -#define NETFLOW_BYTES_32 1 -#define NETFLOW_BYTES_32_SIZE 4 - -#define NETFLOW_PKTS_32 2 -#define NETFLOW_PKTS_32_SIZE 4 - -#define NETFLOW_FLOWS 3 -#define NETFLOW_FLOWS_SIZE 4 - -#define NETFLOW_PROT 4 -#define NETFLOW_PROT_SIZE 1 - -#define NETFLOW_SRC_TOS 5 -#define NETFLOW_SRC_TOS_SIZE 1 - -#define NETFLOW_TCP_FLAGS 6 -#define NETFLOW_TCP_FLAGS_SIZE 1 - -#define NETFLOW_L4_SRC_PORT 7 -#define NETFLOW_L4_SRC_PORT_SIZE 2 - -#define NETFLOW_IPV4_SRC_ADDR 8 -#define NETFLOW_IPV4_SRC_ADDR_SIZE 4 - -#define NETFLOW_SRC_MASK 9 -#define NETFLOW_SRC_MASK_SIZE 1 - -#define NETFLOW_INPUT_SNMP 10 -#define NETFLOW_INPUT_SNMP_SIZE 2 - -#define NETFLOW_L4_DST_PORT 11 -#define NETFLOW_L4_DST_PORT_SIZE 2 - -#define NETFLOW_IPV4_DST_ADDR 12 -#define NETFLOW_IPV4_DST_ADDR_SIZE 4 - -#define NETFLOW_DST_MASK 13 -#define NETFLOW_DST_MASK_SIZE 1 - -#define NETFLOW_OUTPUT_SNMP 14 -#define NETFLOW_OUTPUT_SNMP_SIZE 2 - -#define NETFLOW_IPV4_NEXT_HOP 15 -#define NETFLOW_IPV4_NEXT_HOP_SIZE 4 - -#define NETFLOW_SRC_AS 16 -#define NETFLOW_SRC_AS_SIZE 2 - -#define NETFLOW_DST_AS 17 -#define NETFLOW_DST_AS_SIZE 2 - -#define NETFLOW_BGP_NEXT_HOP 18 -#define NETFLOW_BGP_NEXT_HOP_SIZE 4 - -#define NETFLOW_IPM_DPKTS 19 -#define NETFLOW_IPM_DPKTS_SIZE 4 - -#define NETFLOW_IPM_DOCTETS 20 -#define NETFLOW_IPM_DOCTETS_SIZE 4 - -#define NETFLOW_LAST_SWITCHED 21 -#define NETFLOW_LAST_SWITCHED_SIZE 4 - -#define NETFLOW_FIRST_SWITCHED 22 -#define NETFLOW_FIRST_SWITCHED_SIZE 4 - -#define NETFLOW_BYTES_64 23 -#define NETFLOW_BYTES_64_SIZE 8 - -#define NETFLOW_PKTS_64 24 -#define NETFLOW_PKTS_64_SIZE 8 - -#define NETFLOW_MAC_ADDR 25 -#define NETFLOW_MAC_ADDR_SIZE 6 - -#define NETFLOW_VLAN_ID 26 -#define NETFLOW_VLAN_ID_SIZE 2 - -#define NETFLOW_IPV6_SRC_ADDR 27 -#define NETFLOW_IPV6_SRC_ADDR_SIZE 16 - -#define NETFLOW_IPV6_DST_ADDR 28 -#define NETFLOW_IPV6_DST_ADDR_SIZE 16 - -#define NETFLOW_IPV6_SRC_MASK 29 -#define NETFLOW_IPV6_SRC_MASK_SIZE 1 - -#define NETFLOW_IPV6_DST_MASK 30 -#define NETFLOW_IPV6_DST_MASK_SIZE 1 - -#define NETFLOW_FLOW_LABEL 31 -#define NETFLOW_FLOW_LABEL_SZIE 3 - -#define NETFLOW_ICMP_TYPE 32 -#define NETFLOW_ICMP_TYPE_SIZE 1 - -#define NETFLOW_MUL_IGMP_TYPE 33 -#define NETFLOW_MUL_IGMP_TYPE_SIZE 1 - -#define NETFLOW_SAMPLING_INTERVAL 34 -#define NETFLOW_SAMPLING_INTERVAL_SIZE 4 - -#define NETFLOW_SAMPLING_ALGORITHM 35 -#define NETFLOW_SAMPLING_ALGORITHM_SIZE 1 - -#define NETFLOW_FLOW_ACTIVE_TIMEOUT 36 -#define NETFLOW_FLOW_ACTIVE_TIMEOUT_SIZE 2 - -#define NETFLOW_FLOW_INACTIVE_TIMEOUT 37 -#define NETFLOW_FLOW_INACTIVE_TIMEOUT_SIZE 2 - -#define NETFLOW_ENGINE_TYPE 38 -#define NETFLOW_ENGINE_TYPE_SIZE 1 - -#define NETFLOW_ENGINE_ID 39 -#define NETFLOW_ENGINE_ID_SIZE 1 - -#define NETFLOW_TOTAL_BYTES_EXPORTED 40 -#define NETFLOW_TOTAL_BYTES_EXPORTED_SIZE 4 - -#define NETFLOW_TOTAL_EXPORT_PKTS_SENT 41 -#define NETFLOW_TOTAL_EXPORT_PKTS_SENT_SIZE 4 - -#define NETFLOW_TOTAL_FLOWS_EXPORTED 42 -#define NETFLOW_TOTAL_FLOWS_EXPORTED_SIZE 4 - -#define NETFLOW_FLOW_SAMPLER_ID 48 -#define NETFLOW_FLOW_SAMPLER_ID_SIZE 1 - -#define NETFLOW_FLOW_SAMPLER_MODE 49 -#define NETFLOW_FLOW_SAMPLER_MODE_SIZE 1 - -#define NETFLOW_FLOW_SAMPLER_RANDOM_INTERVAL 50 -#define NETFLOW_FLOW_SAMPLER_RANDOM_INTERVAL_SIZE 4 - -#define NETFLOW_IP_PROTOCOL_VERSION 60 -#define NETFLOW_IP_PROTOCOL_VERSION_SIZE 1 - -#define NETFLOW_DIRECTION 61 -#define NETFLOW_DIRECTION_SIZE 1 - -#define NETFLOW_IPV6_NEXT_HOP 62 -#define NETFLOW_IPV6_NEXT_HOP_SIZE 16 - -#define NETFLOW_BGP_IPV6_NEXT_HOP 63 -#define NETFLOW_BGP_IPV6_NEXT_HOP_SIZE 16 - -#define NETFLOW_IPV6_OPTION_HEADERS 64 -#define NETFLOW_IPV6_OPTION_HEADERS_SIZE 4 - - -#define NETFLOW_VERSION 1001 -#define NETFLOW_VERSION_SIZE 2 - -#define NETFLOW_COUNT 1002 -#define NETFLOW_COUNT_SIZE 2 - -#define NETFLOW_UPTIME 1003 -#define NETFLOW_UPTIME_SIZE 4 - -#define NETFLOW_UNIX_SECS 1004 -#define NETFLOW_UNIX_SECS_SIZE 4 - -#define NETFLOW_UNIX_NSECS 1005 -#define NETFLOW_UNIX_NSECS_SIZE 4 - -#define NETFLOW_FLOW_SEQUENCE 1006 -#define NETFLOW_FLOW_SEQUENCE_SIZE 4 - -#define NETFLOW_HEADER_SAMPLING_INTERVAL 1009 /* ??? */ -#define NETFLOW_HEADER_SAMPLING_INTERVAL_SIZE 2 - -#define NETFLOW_FLAGS7_1 1010 -#define NETFLOW_FLAGS7_1_SIZE 1 - -#define NETFLOW_FLAGS7_2 1011 -#define NETFLOW_FLAGS7_2_SIZE 2 - -#define NETFLOW_ROUTER_SC 1012 -#define NETFLOW_ROUTER_SC_SIZE 4 - - -#define NETFLOW_PAD8 9001 -#define NETFLOW_PAD8_SIZE 1 - -#define NETFLOW_PAD16 9002 -#define NETFLOW_PAD16_SIZE 2 - -#define NETFLOW_PAD32 9003 -#define NETFLOW_PAD32_SIZE 4 - -#define NETFLOW_PAD64 9004 -#define NETFLOW_PAD64_SIZE 8 - - -#define NETFLOW_MAX_PACKET 1500 - -#define NETFLOW1_VERSION 1 -#define NETFLOW1_HEADER_SIZE 16 -#define NETFLOW1_MAX_FLOWS 24 -#define NETFLOW1_FLOW_SIZE 48 -#define NETFLOW1_SEQ_OFFSET 0 - -#define NETFLOW5_VERSION 5 -#define NETFLOW5_HEADER_SIZE 24 -#define NETFLOW5_MAX_FLOWS 30 -#define NETFLOW5_FLOW_SIZE 48 -#define NETFLOW5_SEQ_OFFSET 16 - -#define NETFLOW7_VERSION 7 -#define NETFLOW7_HEADER_SIZE 24 -#define NETFLOW7_MAX_FLOWS 27 -#define NETFLOW7_FLOW_SIZE 52 -#define NETFLOW7_SEQ_OFFSET 16 - -#define NETFLOW8_VERSION 8 -#define NETFLOW8_MAX_FLOWS 51 - -struct NetFlow { - unsigned Version; - unsigned HeaderSize; - unsigned MaxFlows; - unsigned FlowSize; - unsigned SeqOffset; - unsigned HeaderFields; - uint16_t *HeaderFormat; - unsigned FlowFields; - uint16_t *FlowFormat; -}; - -#endif diff --git a/trunk/src/tags b/trunk/src/tags deleted file mode 100644 index 3565b6b..0000000 --- a/trunk/src/tags +++ /dev/null @@ -1,637 +0,0 @@ -!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ -!_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ -!_TAG_PROGRAM_AUTHOR Darren Hiebert /dhiebert@users.sourceforge.net/ -!_TAG_PROGRAM_NAME Exuberant Ctags // -!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/ -!_TAG_PROGRAM_VERSION 5.5.4 // -ACLOCAL Makefile /^ACLOCAL = ${SHELL} \/home\/sapan\/fprobe-ulog-1.1\/missing --run aclocal-1.9$/;" m -ACLOCAL_M4 Makefile /^ACLOCAL_M4 = $(top_srcdir)\/aclocal.m4$/;" m -AMDEP_FALSE Makefile /^AMDEP_FALSE = #$/;" m -AMDEP_TRUE Makefile /^AMDEP_TRUE = $/;" m -AMTAR Makefile /^AMTAR = ${SHELL} \/home\/sapan\/fprobe-ulog-1.1\/missing --run tar$/;" m -AUTOCONF Makefile /^AUTOCONF = ${SHELL} \/home\/sapan\/fprobe-ulog-1.1\/missing --run autoconf$/;" m -AUTOHEADER Makefile /^AUTOHEADER = ${SHELL} \/home\/sapan\/fprobe-ulog-1.1\/missing --run autoheader$/;" m -AUTOMAKE Makefile /^AUTOMAKE = ${SHELL} \/home\/sapan\/fprobe-ulog-1.1\/missing --run automake-1.9$/;" m -AWK Makefile /^AWK = gawk$/;" m -BULK_QUANTITY fprobe-ulog.c 149;" d file: -BULK_QUANTITY fprobe-ulog.c 151;" d file: -BULK_QUANTITY_MAX fprobe-ulog.c 147;" d file: -Bflag fprobe-ulog.c /^ Bflag,$/;" e file: -CAPTURE_SIZE fprobe-ulog.h 22;" d -CC Makefile /^CC = gcc$/;" m -CCDEPMODE Makefile /^CCDEPMODE = depmode=none$/;" m -CCLD Makefile /^CCLD = $(CC)$/;" m -CDPATH Makefile /^am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd$/;" m -CFLAGS Makefile /^CFLAGS = -g -O2 -D_BSD_SOURCE -D_REENTRANT -DWALL -W -Wall$/;" m -COMPILE Makefile /^COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \\$/;" m -CONFIG_CLEAN_FILES Makefile /^CONFIG_CLEAN_FILES =$/;" m -CONFIG_HEADER Makefile /^CONFIG_HEADER = $(top_builddir)\/config.h$/;" m -COPY_INTO fprobe-ulog.h 24;" d -CPP Makefile /^CPP = gcc -E$/;" m -CPPFLAGS Makefile /^CPPFLAGS = $/;" m -CRC16_POLY hash.h 42;" d -CTAGS Makefile /^CTAGS = ctags$/;" m -CYGPATH_W Makefile /^CYGPATH_W = echo$/;" m -DATE Makefile /^DATE = 2007-10-26$/;" m -DBG common.h 13;" d -DEBUG_C common.h 18;" d -DEBUG_E common.h 24;" d -DEBUG_F common.h 28;" d -DEBUG_I common.h 30;" d -DEBUG_M common.h 26;" d -DEBUG_S common.h 22;" d -DEBUG_U common.h 20;" d -DEFAULT_INCLUDES Makefile /^DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)$/;" m -DEFS Makefile /^DEFS = -DHAVE_CONFIG_H$/;" m -DEPDIR Makefile /^DEPDIR = .deps$/;" m -DISTFILES Makefile /^DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)$/;" m -DIST_COMMON Makefile /^DIST_COMMON = $(srcdir)\/Makefile.am $(srcdir)\/Makefile.in$/;" m -DIST_SOURCES Makefile /^DIST_SOURCES = $(fprobe_ulog_SOURCES)$/;" m -DIST_SUBDIRS Makefile /^DIST_SUBDIRS = $(SUBDIRS)$/;" m -ECHO_C Makefile /^ECHO_C = $/;" m -ECHO_N Makefile /^ECHO_N = -n$/;" m -ECHO_T Makefile /^ECHO_T = $/;" m -EGREP Makefile /^EGREP = grep -E$/;" m -EMIT_TIMEOUT fprobe-ulog.h 20;" d -ETAGS Makefile /^ETAGS = etags$/;" m -EXEEXT Makefile /^EXEEXT = $/;" m -EXTRA_DIST Makefile /^EXTRA_DIST = ${man_MANS}$/;" m -FLOW_FRAG fprobe-ulog.h 65;" d -FLOW_FRAGMASK fprobe-ulog.h 66;" d -FLOW_LASTFRAG fprobe-ulog.h 68;" d -FLOW_PENDING fprobe-ulog.h 69;" d -FLOW_TL fprobe-ulog.h 67;" d -Flow fprobe-ulog.h /^struct Flow {$/;" s -FlowFields netflow.h /^ unsigned FlowFields;$/;" m struct:NetFlow -FlowFormat netflow.h /^ uint16_t *FlowFormat;$/;" m struct:NetFlow -FlowSize netflow.h /^ unsigned FlowSize;$/;" m struct:NetFlow -Flow_F fprobe-ulog.h /^struct Flow_F {$/;" s -Flow_TL fprobe-ulog.h /^struct Flow_TL {$/;" s -HeaderFields netflow.h /^ unsigned HeaderFields;$/;" m struct:NetFlow -HeaderFormat netflow.h /^ uint16_t *HeaderFormat;$/;" m struct:NetFlow -HeaderSize netflow.h /^ unsigned HeaderSize;$/;" m struct:NetFlow -INCLUDES Makefile /^INCLUDES = -I$(top_srcdir)\/src\/libipulog\/include$/;" m -INSTALL Makefile /^INSTALL = \/bin\/install -c$/;" m -INSTALL_DATA Makefile /^INSTALL_DATA = ${INSTALL} -m 644$/;" m -INSTALL_HEADER Makefile /^INSTALL_HEADER = $(INSTALL_DATA)$/;" m -INSTALL_PROGRAM Makefile /^ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \\$/;" m -INSTALL_PROGRAM Makefile /^INSTALL_PROGRAM = ${INSTALL}$/;" m -INSTALL_PROGRAM_ENV Makefile /^ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install$/;" m -INSTALL_SCRIPT Makefile /^INSTALL_SCRIPT = ${INSTALL}$/;" m -INSTALL_STRIP_FLAG Makefile /^ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \\$/;" m -INSTALL_STRIP_PROGRAM Makefile /^INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s$/;" m -IP_OFFMASK fprobe-ulog.h 16;" d -LDFLAGS Makefile /^LDFLAGS = $/;" m -LIBOBJS Makefile /^LIBOBJS = $/;" m -LIBS Makefile /^LIBS = -lpthread $/;" m -LINK Makefile /^LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@$/;" m -LTLIBOBJS Makefile /^LTLIBOBJS = $/;" m -MAKEINFO Makefile /^MAKEINFO = ${SHELL} \/home\/sapan\/fprobe-ulog-1.1\/missing --run makeinfo$/;" m -MANS Makefile /^MANS = $(man_MANS)$/;" m -MEM_THREADSAFE mem.h 18;" d -MOVE_INTO fprobe-ulog.h 25;" d -MY_GETOPT_ALLOW_REPEAT my_getopt.h 15;" d -MY_GETOPT_ARG_REQUIRED my_getopt.h 13;" d -MY_GETOPT_MAX_OPTSTR my_getopt.h 17;" d -MY_GETOPT_REQUIRED my_getopt.h 14;" d -MY_LOG_MAX_INDEX my_log.h 16;" d -MY_LOG_STDOUT my_log.h 14;" d -MY_LOG_SYSLOG my_log.h 13;" d -MY_LOG_SYSLOG_FACILITY my_log.h 15;" d -MaxFlows netflow.h /^ unsigned MaxFlows;$/;" m struct:NetFlow -Mem mem.h /^struct Mem {$/;" s -Mflag fprobe-ulog.c /^ Mflag,$/;" e file: -NETFLOW1_FLOW_SIZE netflow.h 215;" d -NETFLOW1_HEADER_SIZE netflow.h 213;" d -NETFLOW1_MAX_FLOWS netflow.h 214;" d -NETFLOW1_SEQ_OFFSET netflow.h 216;" d -NETFLOW1_VERSION netflow.h 212;" d -NETFLOW5_FLOW_SIZE netflow.h 221;" d -NETFLOW5_HEADER_SIZE netflow.h 219;" d -NETFLOW5_MAX_FLOWS netflow.h 220;" d -NETFLOW5_SEQ_OFFSET netflow.h 222;" d -NETFLOW5_VERSION netflow.h 218;" d -NETFLOW7_FLOW_SIZE netflow.h 227;" d -NETFLOW7_HEADER_SIZE netflow.h 225;" d -NETFLOW7_MAX_FLOWS netflow.h 226;" d -NETFLOW7_SEQ_OFFSET netflow.h 228;" d -NETFLOW7_VERSION netflow.h 224;" d -NETFLOW8_MAX_FLOWS netflow.h 231;" d -NETFLOW8_VERSION netflow.h 230;" d -NETFLOW_BGP_IPV6_NEXT_HOP netflow.h 159;" d -NETFLOW_BGP_IPV6_NEXT_HOP_SIZE netflow.h 160;" d -NETFLOW_BGP_NEXT_HOP netflow.h 66;" d -NETFLOW_BGP_NEXT_HOP_SIZE netflow.h 67;" d -NETFLOW_BYTES_32 netflow.h 15;" d -NETFLOW_BYTES_32_SIZE netflow.h 16;" d -NETFLOW_BYTES_64 netflow.h 81;" d -NETFLOW_BYTES_64_SIZE netflow.h 82;" d -NETFLOW_COUNT netflow.h 169;" d -NETFLOW_COUNT_SIZE netflow.h 170;" d -NETFLOW_DIRECTION netflow.h 153;" d -NETFLOW_DIRECTION_SIZE netflow.h 154;" d -NETFLOW_DST_AS netflow.h 63;" d -NETFLOW_DST_AS_SIZE netflow.h 64;" d -NETFLOW_DST_MASK netflow.h 51;" d -NETFLOW_DST_MASK_SIZE netflow.h 52;" d -NETFLOW_ENGINE_ID netflow.h 129;" d -NETFLOW_ENGINE_ID_SIZE netflow.h 130;" d -NETFLOW_ENGINE_TYPE netflow.h 126;" d -NETFLOW_ENGINE_TYPE_SIZE netflow.h 127;" d -NETFLOW_FIRST_SWITCHED netflow.h 78;" d -NETFLOW_FIRST_SWITCHED_SIZE netflow.h 79;" d -NETFLOW_FLAGS7_1 netflow.h 187;" d -NETFLOW_FLAGS7_1_SIZE netflow.h 188;" d -NETFLOW_FLAGS7_2 netflow.h 190;" d -NETFLOW_FLAGS7_2_SIZE netflow.h 191;" d -NETFLOW_FLOWS netflow.h 21;" d -NETFLOW_FLOWS_SIZE netflow.h 22;" d -NETFLOW_FLOW_ACTIVE_TIMEOUT netflow.h 120;" d -NETFLOW_FLOW_ACTIVE_TIMEOUT_SIZE netflow.h 121;" d -NETFLOW_FLOW_INACTIVE_TIMEOUT netflow.h 123;" d -NETFLOW_FLOW_INACTIVE_TIMEOUT_SIZE netflow.h 124;" d -NETFLOW_FLOW_LABEL netflow.h 105;" d -NETFLOW_FLOW_LABEL_SZIE netflow.h 106;" d -NETFLOW_FLOW_SAMPLER_ID netflow.h 141;" d -NETFLOW_FLOW_SAMPLER_ID_SIZE netflow.h 142;" d -NETFLOW_FLOW_SAMPLER_MODE netflow.h 144;" d -NETFLOW_FLOW_SAMPLER_MODE_SIZE netflow.h 145;" d -NETFLOW_FLOW_SAMPLER_RANDOM_INTERVAL netflow.h 147;" d -NETFLOW_FLOW_SAMPLER_RANDOM_INTERVAL_SIZE netflow.h 148;" d -NETFLOW_FLOW_SEQUENCE netflow.h 181;" d -NETFLOW_FLOW_SEQUENCE_SIZE netflow.h 182;" d -NETFLOW_HEADER_SAMPLING_INTERVAL netflow.h 184;" d -NETFLOW_HEADER_SAMPLING_INTERVAL_SIZE netflow.h 185;" d -NETFLOW_ICMP_TYPE netflow.h 108;" d -NETFLOW_ICMP_TYPE_SIZE netflow.h 109;" d -NETFLOW_INPUT_SNMP netflow.h 42;" d -NETFLOW_INPUT_SNMP_SIZE netflow.h 43;" d -NETFLOW_IPM_DOCTETS netflow.h 72;" d -NETFLOW_IPM_DOCTETS_SIZE netflow.h 73;" d -NETFLOW_IPM_DPKTS netflow.h 69;" d -NETFLOW_IPM_DPKTS_SIZE netflow.h 70;" d -NETFLOW_IPV4_DST_ADDR netflow.h 48;" d -NETFLOW_IPV4_DST_ADDR_SIZE netflow.h 49;" d -NETFLOW_IPV4_NEXT_HOP netflow.h 57;" d -NETFLOW_IPV4_NEXT_HOP_SIZE netflow.h 58;" d -NETFLOW_IPV4_SRC_ADDR netflow.h 36;" d -NETFLOW_IPV4_SRC_ADDR_SIZE netflow.h 37;" d -NETFLOW_IPV6_DST_ADDR netflow.h 96;" d -NETFLOW_IPV6_DST_ADDR_SIZE netflow.h 97;" d -NETFLOW_IPV6_DST_MASK netflow.h 102;" d -NETFLOW_IPV6_DST_MASK_SIZE netflow.h 103;" d -NETFLOW_IPV6_NEXT_HOP netflow.h 156;" d -NETFLOW_IPV6_NEXT_HOP_SIZE netflow.h 157;" d -NETFLOW_IPV6_OPTION_HEADERS netflow.h 162;" d -NETFLOW_IPV6_OPTION_HEADERS_SIZE netflow.h 163;" d -NETFLOW_IPV6_SRC_ADDR netflow.h 93;" d -NETFLOW_IPV6_SRC_ADDR_SIZE netflow.h 94;" d -NETFLOW_IPV6_SRC_MASK netflow.h 99;" d -NETFLOW_IPV6_SRC_MASK_SIZE netflow.h 100;" d -NETFLOW_IP_PROTOCOL_VERSION netflow.h 150;" d -NETFLOW_IP_PROTOCOL_VERSION_SIZE netflow.h 151;" d -NETFLOW_L4_DST_PORT netflow.h 45;" d -NETFLOW_L4_DST_PORT_SIZE netflow.h 46;" d -NETFLOW_L4_SRC_PORT netflow.h 33;" d -NETFLOW_L4_SRC_PORT_SIZE netflow.h 34;" d -NETFLOW_LAST_SWITCHED netflow.h 75;" d -NETFLOW_LAST_SWITCHED_SIZE netflow.h 76;" d -NETFLOW_MAC_ADDR netflow.h 87;" d -NETFLOW_MAC_ADDR_SIZE netflow.h 88;" d -NETFLOW_MAX_PACKET netflow.h 210;" d -NETFLOW_MUL_IGMP_TYPE netflow.h 111;" d -NETFLOW_MUL_IGMP_TYPE_SIZE netflow.h 112;" d -NETFLOW_OUTPUT_SNMP netflow.h 54;" d -NETFLOW_OUTPUT_SNMP_SIZE netflow.h 55;" d -NETFLOW_PAD16 netflow.h 200;" d -NETFLOW_PAD16_SIZE netflow.h 201;" d -NETFLOW_PAD32 netflow.h 203;" d -NETFLOW_PAD32_SIZE netflow.h 204;" d -NETFLOW_PAD64 netflow.h 206;" d -NETFLOW_PAD64_SIZE netflow.h 207;" d -NETFLOW_PAD8 netflow.h 197;" d -NETFLOW_PAD8_SIZE netflow.h 198;" d -NETFLOW_PKTS_32 netflow.h 18;" d -NETFLOW_PKTS_32_SIZE netflow.h 19;" d -NETFLOW_PKTS_64 netflow.h 84;" d -NETFLOW_PKTS_64_SIZE netflow.h 85;" d -NETFLOW_PROT netflow.h 24;" d -NETFLOW_PROT_SIZE netflow.h 25;" d -NETFLOW_ROUTER_SC netflow.h 193;" d -NETFLOW_ROUTER_SC_SIZE netflow.h 194;" d -NETFLOW_SAMPLING_ALGORITHM netflow.h 117;" d -NETFLOW_SAMPLING_ALGORITHM_SIZE netflow.h 118;" d -NETFLOW_SAMPLING_INTERVAL netflow.h 114;" d -NETFLOW_SAMPLING_INTERVAL_SIZE netflow.h 115;" d -NETFLOW_SRC_AS netflow.h 60;" d -NETFLOW_SRC_AS_SIZE netflow.h 61;" d -NETFLOW_SRC_MASK netflow.h 39;" d -NETFLOW_SRC_MASK_SIZE netflow.h 40;" d -NETFLOW_SRC_TOS netflow.h 27;" d -NETFLOW_SRC_TOS_SIZE netflow.h 28;" d -NETFLOW_TCP_FLAGS netflow.h 30;" d -NETFLOW_TCP_FLAGS_SIZE netflow.h 31;" d -NETFLOW_TOTAL_BYTES_EXPORTED netflow.h 132;" d -NETFLOW_TOTAL_BYTES_EXPORTED_SIZE netflow.h 133;" d -NETFLOW_TOTAL_EXPORT_PKTS_SENT netflow.h 135;" d -NETFLOW_TOTAL_EXPORT_PKTS_SENT_SIZE netflow.h 136;" d -NETFLOW_TOTAL_FLOWS_EXPORTED netflow.h 138;" d -NETFLOW_TOTAL_FLOWS_EXPORTED_SIZE netflow.h 139;" d -NETFLOW_UNIX_NSECS netflow.h 178;" d -NETFLOW_UNIX_NSECS_SIZE netflow.h 179;" d -NETFLOW_UNIX_SECS netflow.h 175;" d -NETFLOW_UNIX_SECS_SIZE netflow.h 176;" d -NETFLOW_UPTIME netflow.h 172;" d -NETFLOW_UPTIME_SIZE netflow.h 173;" d -NETFLOW_VERSION netflow.h 166;" d -NETFLOW_VERSION_SIZE netflow.h 167;" d -NETFLOW_VLAN_ID netflow.h 90;" d -NETFLOW_VLAN_ID_SIZE netflow.h 91;" d -NORMAL_INSTALL Makefile /^NORMAL_INSTALL = :$/;" m -NORMAL_UNINSTALL Makefile /^NORMAL_UNINSTALL = :$/;" m -NROFF Makefile /^NROFF = nroff$/;" m -NetFlow netflow.h /^struct NetFlow {$/;" s -NetFlow1 netflow.c /^struct NetFlow NetFlow1 = {$/;" v -NetFlow1_Flow netflow.c /^static uint16_t NetFlow1_Flow[] = {$/;" v file: -NetFlow1_Header netflow.c /^static uint16_t NetFlow1_Header[] = {$/;" v file: -NetFlow5 netflow.c /^struct NetFlow NetFlow5 = {$/;" v -NetFlow5_Flow netflow.c /^static uint16_t NetFlow5_Flow[] = {$/;" v file: -NetFlow5_Header netflow.c /^static uint16_t NetFlow5_Header[] = {$/;" v file: -NetFlow7 netflow.c /^struct NetFlow NetFlow7 = {$/;" v -NetFlow7_Flow netflow.c /^static uint16_t NetFlow7_Flow[] = {$/;" v file: -NetFlow7_Header netflow.c /^static uint16_t NetFlow7_Header[] = {$/;" v file: -OBJEXT Makefile /^OBJEXT = o$/;" m -PACKAGE Makefile /^PACKAGE = fprobe-ulog$/;" m -PACKAGE_BUGREPORT Makefile /^PACKAGE_BUGREPORT = $/;" m -PACKAGE_NAME Makefile /^PACKAGE_NAME = $/;" m -PACKAGE_STRING Makefile /^PACKAGE_STRING = $/;" m -PACKAGE_TARNAME Makefile /^PACKAGE_TARNAME = $/;" m -PACKAGE_VERSION Makefile /^PACKAGE_VERSION = $/;" m -PATH_SEPARATOR Makefile /^PATH_SEPARATOR = :$/;" m -PEER_MIRROR fprobe-ulog.h 126;" d -PEER_ROTATE fprobe-ulog.h 127;" d -POST_INSTALL Makefile /^POST_INSTALL = :$/;" m -POST_UNINSTALL Makefile /^POST_UNINSTALL = :$/;" m -PRE_INSTALL Makefile /^PRE_INSTALL = :$/;" m -PRE_UNINSTALL Makefile /^PRE_UNINSTALL = :$/;" m -PROGRAMS Makefile /^PROGRAMS = $(sbin_PROGRAMS)$/;" m -RANLIB Makefile /^RANLIB = ranlib$/;" m -RECURSIVE_TARGETS Makefile /^RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \\$/;" m -RNDDEV hash.h 45;" d -SCHED fprobe-ulog.h 19;" d -SET_MAKE Makefile /^SET_MAKE = $/;" m -SHELL Makefile /^SHELL = \/bin\/sh$/;" m -SIGALRM_MASK fprobe-ulog.h 108;" d -SIGTERM_MASK fprobe-ulog.h 109;" d -SIGUSR1_MASK fprobe-ulog.h 110;" d -SOURCES Makefile /^SOURCES = $(fprobe_ulog_SOURCES)$/;" m -STRIP Makefile /^STRIP = $/;" m -STRIPPROG Makefile /^ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install$/;" m -SUBDIRS Makefile /^SUBDIRS = libipulog$/;" m -SeqOffset netflow.h /^ unsigned SeqOffset;$/;" m struct:NetFlow -THREADS fprobe-ulog.h 23;" d -Time fprobe-ulog.h /^struct Time {$/;" s -UNPENDING_TIMEOUT fprobe-ulog.h 21;" d -Uflag fprobe-ulog.c /^ Uflag,$/;" e file: -VERSION Makefile /^VERSION = 1.1$/;" m -Version netflow.h /^ unsigned Version;$/;" m struct:NetFlow -Xflag fprobe-ulog.c /^ Xflag,$/;" e file: -_COMMON_H_ common.h 11;" d -_FPROBE_ULOG_H_ fprobe-ulog.h 11;" d -_HASH_H_ hash.h 11;" d -_MEM_H_ mem.h 11;" d -_MY_GETOPT_H_ my_getopt.h 11;" d -_MY_INTTYPES_H_ my_inttypes.h 11;" d -_MY_LOG_H_ my_log.h 11;" d -_NETFLOW_H_ netflow.h 11;" d -ac_ct_CC Makefile /^ac_ct_CC = gcc$/;" m -ac_ct_RANLIB Makefile /^ac_ct_RANLIB = ranlib$/;" m -ac_ct_STRIP Makefile /^ac_ct_STRIP = $/;" m -active_lifetime fprobe-ulog.c /^static int active_lifetime = 300;$/;" v file: -addr fprobe-ulog.h /^ struct sockaddr_in addr;$/;" m struct:peer -aflag fprobe-ulog.c /^ aflag,$/;" e file: -am__aclocal_m4_deps Makefile /^am__aclocal_m4_deps = $(top_srcdir)\/configure.in$/;" m -am__cd Makefile /^am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd$/;" m -am__configure_deps Makefile /^am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \\$/;" m -am__depfiles_maybe Makefile /^am__depfiles_maybe =$/;" m -am__fastdepCC_FALSE Makefile /^am__fastdepCC_FALSE = $/;" m -am__fastdepCC_TRUE Makefile /^am__fastdepCC_TRUE = #$/;" m -am__include Makefile /^am__include = include$/;" m -am__installdirs Makefile /^am__installdirs = "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man8dir)"$/;" m -am__leading_dot Makefile /^am__leading_dot = .$/;" m -am__quote Makefile /^am__quote = $/;" m -am__tar Makefile /^am__tar = ${AMTAR} chof - "$$tardir"$/;" m -am__untar Makefile /^am__untar = ${AMTAR} xf -$/;" m -am_fprobe_ulog_OBJECTS Makefile /^am_fprobe_ulog_OBJECTS = fprobe-ulog.$(OBJEXT) netflow.$(OBJEXT) \\$/;" m -amf Makefile /^ @set fnord $$MAKEFLAGS; amf=$$2; \\$/;" m -arg my_getopt.h /^ char *arg;$/;" m struct:getopt_parms -base fprobe-ulog.h /^ int base;$/;" m struct:snmp_rule -basename fprobe-ulog.h /^ char basename[IFNAMSIZ];$/;" m struct:snmp_rule -bflag fprobe-ulog.c /^ bflag,$/;" e file: -bindir Makefile /^bindir = ${exec_prefix}\/bin$/;" m -blocking fprobe-ulog.c /^ u_int8_t blocking;$/;" m struct:ipulog_handle file: -build Makefile /^build = i686-pc-linux-gnu$/;" m -build_alias Makefile /^build_alias = $/;" m -build_cpu Makefile /^build_cpu = i686$/;" m -build_os Makefile /^build_os = linux-gnu$/;" m -build_triplet Makefile /^build_triplet = i686-pc-linux-gnu$/;" m -build_vendor Makefile /^build_vendor = pc$/;" m -bulk_quantity fprobe-ulog.c /^static unsigned bulk_quantity = BULK_QUANTITY;$/;" v file: -bulk_quantity mem.c /^static unsigned int bulk_quantity;$/;" v file: -cap_buf fprobe-ulog.c /^static char *cap_buf;$/;" v file: -cap_thread fprobe-ulog.c /^void *cap_thread()$/;" f -cflag fprobe-ulog.c /^ cflag,$/;" e file: -cmpmtime fprobe-ulog.c /^inline time_t cmpmtime(struct Time *t1, struct Time *t2)$/;" f -copy_flow fprobe-ulog.c /^inline void copy_flow(struct Flow *src, struct Flow *dst)$/;" f -count my_getopt.h /^ int count;$/;" m struct:getopt_parms -crc16 hash.c /^uint16_t crc16(uint16_t crc, uint8_t val)$/;" f -crc16_poly hash.c /^static uint16_t crc16_poly;$/;" v file: -crc16_table hash.c /^static uint16_t crc16_table[256];$/;" v file: -ctime fprobe-ulog.h /^ struct Time ctime;$/;" m struct:Flow -datadir Makefile /^datadir = ${prefix}\/share$/;" m -depcomp Makefile /^depcomp =$/;" m -depmode Makefile /^CCDEPMODE = depmode=none$/;" m -dflag fprobe-ulog.c /^ dflag,$/;" e file: -dip fprobe-ulog.h /^ struct in_addr dip;$/;" m struct:Flow -dip fprobe-ulog.h /^ struct in_addr dip;$/;" m struct:Flow_F -dip fprobe-ulog.h /^ struct in_addr dip;$/;" m struct:Flow_TL -dir Makefile /^ dir="\/$$dir"; \\$/;" m -dir Makefile /^ dir=''; \\$/;" m -dir Makefile /^ dir=`echo "$$file" | sed -e 's,\/[^\/]*$$,,'`; \\$/;" m -distdir Makefile /^ distdir="$$distdir\/$$subdir" \\$/;" m -distdir Makefile /^ distdir=`$(am__cd) $(distdir) && pwd`; \\$/;" m -dot_seen Makefile /^ dot_seen=yes; \\$/;" m -dot_seen Makefile /^ dot_seen=no; \\$/;" m -dp fprobe-ulog.h /^ uint16_t dp;$/;" m struct:Flow -dp fprobe-ulog.h /^ uint16_t dp;$/;" m struct:Flow_TL -eflag fprobe-ulog.c /^ eflag,$/;" e file: -element_size mem.c /^static unsigned int element_size;$/;" v file: -element_table_size mem.c /^static unsigned int element_table_size;$/;" v file: -emit_cond fprobe-ulog.c /^static pthread_cond_t emit_cond = PTHREAD_COND_INITIALIZER;$/;" v file: -emit_count fprobe-ulog.c /^static unsigned emit_count;$/;" v file: -emit_mutex fprobe-ulog.c /^static pthread_mutex_t emit_mutex = PTHREAD_MUTEX_INITIALIZER;$/;" v file: -emit_packet fprobe-ulog.c /^static uint8_t emit_packet[NETFLOW_MAX_PACKET];$/;" v file: -emit_pkts fprobe-ulog.c /^static unsigned emit_pkts, emit_queue;$/;" v file: -emit_queue fprobe-ulog.c /^static unsigned emit_pkts, emit_queue;$/;" v file: -emit_rate_bytes fprobe-ulog.c /^static unsigned emit_rate_bytes, emit_rate_delay;$/;" v file: -emit_rate_delay fprobe-ulog.c /^static unsigned emit_rate_bytes, emit_rate_delay;$/;" v file: -emit_sequence fprobe-ulog.c /^static uint32_t emit_sequence;$/;" v file: -emit_thread fprobe-ulog.c /^void *emit_thread()$/;" f -emit_time fprobe-ulog.c /^static struct Time emit_time;$/;" v file: -emit_timeout fprobe-ulog.c /^static int emit_timeout = EMIT_TIMEOUT, unpending_timeout = UNPENDING_TIMEOUT;$/;" v file: -empty_fix Makefile /^ empty_fix=.; \\$/;" m -empty_fix Makefile /^ empty_fix=; \\$/;" m -exec_prefix Makefile /^exec_prefix = ${prefix}$/;" m -ext Makefile /^ *) ext='8' ;; \\$/;" m -ext Makefile /^ ext=`echo $$i | sed -e 's\/^.*\\\\.\/\/'`; \\$/;" m -f Makefile /^ f=`echo "$$p1" | sed 's,^.*\/,,;$(transform);s\/$$\/$(EXEEXT)\/'`; \\$/;" m -f Makefile /^ f=`echo "$$p" | sed 's,^.*\/,,;s\/$(EXEEXT)$$\/\/;$(transform);s\/$$\/$(EXEEXT)\/'`; \\$/;" m -fail Makefile /^ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \\$/;" m -fd fprobe-ulog.c /^ int fd;$/;" m struct:ipulog_handle file: -file Makefile /^ $(srcdir)\/*) file=`echo "$$file" | sed "s|^$$srcdirstrip\/||"`;; \\$/;" m -file Makefile /^ $(top_srcdir)\/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip\/|$(top_builddir)\/|"`;; \\$/;" m -fill fprobe-ulog.c /^void *fill(int fields, uint16_t *format, struct Flow *flow, void *p)$/;" f -find fprobe-ulog.c /^struct Flow *find(struct Flow *where, struct Flow *what, struct Flow ***prev)$/;" f -first mem.h /^ void *first;$/;" m struct:Mem -flag my_getopt.h /^ int flag;$/;" m struct:getopt_parms -flags fprobe-ulog.h /^ int flags;$/;" m struct:Flow -flows fprobe-ulog.c /^static struct Flow *flows[1 << HASH_BITS];$/;" v file: -flows_emit fprobe-ulog.c /^static struct Flow *flows_emit;$/;" v file: -flows_fragmented fprobe-ulog.c /^static unsigned flows_total, flows_fragmented;$/;" v file: -flows_mutex fprobe-ulog.c /^static pthread_mutex_t flows_mutex[1 << HASH_BITS];$/;" v file: -flows_total fprobe-ulog.c /^static unsigned flows_total, flows_fragmented;$/;" v file: -fprobe_ulog_DEPENDENCIES Makefile /^fprobe_ulog_DEPENDENCIES = libipulog\/libipulog.a$/;" m -fprobe_ulog_LDADD Makefile /^fprobe_ulog_LDADD = libipulog\/libipulog.a$/;" m -fprobe_ulog_OBJECTS Makefile /^fprobe_ulog_OBJECTS = $(am_fprobe_ulog_OBJECTS)$/;" m -fprobe_ulog_SOURCES Makefile /^fprobe_ulog_SOURCES = fprobe-ulog.c fprobe-ulog.h \\$/;" m -frag_lifetime fprobe-ulog.c /^static int frag_lifetime = 30;$/;" v file: -free mem.h /^ unsigned int free;$/;" m struct:Mem -free_elements mem.c /^unsigned int free_elements;$/;" v -getopt_parms my_getopt.h /^struct getopt_parms {$/;" s -gettime fprobe-ulog.c /^void gettime(struct Time *now)$/;" f -getuptime fprobe-ulog.c /^uint32_t getuptime(struct Time *t)$/;" f -gflag fprobe-ulog.c /^ gflag,$/;" e file: -hash hash.c /^hash_t hash(void *p, int size)$/;" f -hash_flow fprobe-ulog.c /^hash_t hash_flow(struct Flow *flow)$/;" f -hash_init hash.c /^void hash_init()$/;" f -hash_t hash.h /^typedef uint16_t hash_t;$/;" t -hash_t hash.h /^typedef uint8_t hash_t;$/;" t -here Makefile /^ here=`$(am__cd) $(top_builddir) && pwd` \\$/;" m -here Makefile /^ here=`pwd`; \\$/;" m -hflag fprobe-ulog.c /^ hflag,$/;" e file: -host Makefile /^host = i686-pc-linux-gnu$/;" m -host_alias Makefile /^host_alias = $/;" m -host_cpu Makefile /^host_cpu = i686$/;" m -host_os Makefile /^host_os = linux-gnu$/;" m -host_triplet Makefile /^host_triplet = i686-pc-linux-gnu$/;" m -host_vendor Makefile /^host_vendor = pc$/;" m -id fprobe-ulog.h /^ uint16_t id;$/;" m struct:Flow -id fprobe-ulog.h /^ uint16_t id;$/;" m struct:Flow_F -id fprobe-ulog.h /^ uint16_t id;$/;" m struct:Flow_TL -ident fprobe-ulog.c /^static char ident[256] = "fprobe-ulog";$/;" v file: -iif fprobe-ulog.h /^ uint16_t iif;$/;" m struct:Flow -iif fprobe-ulog.h /^ uint16_t iif;$/;" m struct:Flow_F -iif fprobe-ulog.h /^ uint16_t iif;$/;" m struct:Flow_TL -ile Makefile /^ else file=$$i; fi; \\$/;" m -ile Makefile /^ if test -f $(srcdir)\/$$i; then file=$(srcdir)\/$$i; \\$/;" m -inactive_lifetime fprobe-ulog.c /^static int inactive_lifetime = 60;$/;" v file: -include_option Makefile /^ include_option=--etags-include; \\$/;" m -include_option Makefile /^ include_option=--include; \\$/;" m -includedir Makefile /^includedir = ${prefix}\/include$/;" m -info_debug fprobe-ulog.c /^void info_debug()$/;" f -infodir Makefile /^infodir = ${prefix}\/info$/;" m -inst Makefile /^ inst=`echo $$i | sed -e 's\/\\\\.[0-9a-z]*$$\/\/'`; \\$/;" m -inst Makefile /^ inst=`echo $$inst | sed '$(transform)'`.$$ext; \\$/;" m -inst Makefile /^ inst=`echo $$inst | sed -e 's\/^.*\\\/\/\/'`; \\$/;" m -install_sh Makefile /^install_sh = \/home\/sapan\/fprobe-ulog-1.1\/install-sh$/;" m -install_sh_DATA Makefile /^install_sh_DATA = $(install_sh) -c -m 644$/;" m -install_sh_PROGRAM Makefile /^ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \\$/;" m -install_sh_PROGRAM Makefile /^install_sh_PROGRAM = $(install_sh) -c$/;" m -install_sh_SCRIPT Makefile /^install_sh_SCRIPT = $(install_sh) -c$/;" m -int16_t my_inttypes.h /^typedef short int16_t;$/;" t -int32_t my_inttypes.h /^typedef int int32_t;$/;" t -int32_t my_inttypes.h /^typedef long int32_t;$/;" t -int64_t my_inttypes.h /^typedef long int64_t;$/;" t -int64_t my_inttypes.h /^typedef long long int64_t;$/;" t -int8_t my_inttypes.h /^typedef signed char int8_t;$/;" t -ipulog_handle fprobe-ulog.c /^struct ipulog_handle {$/;" s file: -killed fprobe-ulog.c /^static int killed;$/;" v file: -l2 Makefile /^ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \\$/;" m -laddr fprobe-ulog.h /^ struct sockaddr_in laddr;$/;" m struct:peer -last mem.h /^ void *last;$/;" m struct:Mem -last_nlhdr fprobe-ulog.c /^ struct nlmsghdr* last_nlhdr;$/;" m struct:ipulog_handle file: -len fprobe-ulog.h /^ int len;$/;" m struct:snmp_rule -lflag fprobe-ulog.c /^ lflag,$/;" e file: -libdir Makefile /^libdir = ${exec_prefix}\/lib$/;" m -libexecdir Makefile /^libexecdir = ${exec_prefix}\/libexec$/;" m -limit_memory mem.c /^static unsigned int limit_memory;$/;" v file: -list Makefile /^ *.8*) list="$$list $$i" ;; \\$/;" m -list Makefile /^ *) list='$(SUBDIRS)' ;; \\$/;" m -list Makefile /^ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \\$/;" m -list Makefile /^ list='$(DISTFILES)'; for file in $$list; do \\$/;" m -list Makefile /^ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \\$/;" m -list Makefile /^ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \\$/;" m -list Makefile /^ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \\$/;" m -list Makefile /^ list='$(SUBDIRS)'; for subdir in $$list; do \\$/;" m -local fprobe-ulog.c /^ struct sockaddr_nl local;$/;" m struct:ipulog_handle file: -local_target Makefile /^ local_target="$$target"; \\$/;" m -local_target Makefile /^ local_target="$$target-am"; \\$/;" m -localstatedir Makefile /^localstatedir = ${prefix}\/var$/;" m -log_dest fprobe-ulog.c /^static unsigned log_dest = MY_LOG_SYSLOG;$/;" v file: -main fprobe-ulog.c /^int main(int argc, char **argv)$/;" f -malloc_size mem.c /^static unsigned int malloc_size;$/;" v file: -man8dir Makefile /^man8dir = $(mandir)\/man8$/;" m -man_MANS Makefile /^man_MANS = fprobe-ulog.8$/;" m -mandir Makefile /^mandir = ${prefix}\/man$/;" m -mark_is_tos fprobe-ulog.c 141;" d file: -mem_alloc mem.c /^void *mem_alloc()$/;" f -mem_free mem.c /^void mem_free(void *eptr)$/;" f -mem_index_t mem.h /^typedef uint16_t mem_index_t;$/;" t -mem_index_t mem.h /^typedef uint8_t mem_index_t;$/;" t -mem_index_t mem.h /^typedef void* mem_index_t;$/;" t -mem_index_table_size mem.c /^static unsigned int mem_index_table_size;$/;" v file: -mem_init mem.c /^int mem_init(unsigned int element, unsigned int bulk, unsigned int limit)$/;" f -mem_mutex mem.c /^static pthread_mutex_t mem_mutex = PTHREAD_MUTEX_INITIALIZER;$/;" v file: -mflag fprobe-ulog.c /^ mflag,$/;" e file: -mkdir_p Makefile /^mkdir_p = mkdir -p --$/;" m -mkinstalldirs Makefile /^mkinstalldirs = $(SHELL) $(top_srcdir)\/mkinstalldirs$/;" m -mtime fprobe-ulog.h /^ struct Time mtime;$/;" m struct:Flow -my_getopt my_getopt.c /^int my_getopt(int argc, char * const argv[],$/;" f -my_log my_log.c /^void my_log(unsigned level, const char *format, ...)$/;" f -my_log_close my_log.c /^void my_log_close(void)$/;" f -my_log_flags my_log.c /^static unsigned my_log_flags;$/;" v file: -my_log_indent my_log.c /^static char *my_log_indent;$/;" v file: -my_log_min_level my_log.c /^static unsigned my_log_min_level;$/;" v file: -my_log_names my_log.c /^static char *my_log_names[] = {$/;" v file: -my_log_open my_log.c /^void my_log_open(char *indent, unsigned min_level, unsigned flags)$/;" f -name my_getopt.h /^ char name;$/;" m struct:getopt_parms -netflow fprobe-ulog.c /^static struct NetFlow *netflow = &NetFlow5;$/;" v file: -next fprobe-ulog.h /^ struct Flow *next;$/;" m struct:Flow -next mem.h /^ struct Mem *next;$/;" m struct:Mem -nflag fprobe-ulog.c /^ nflag,$/;" e file: -npeers fprobe-ulog.c /^static int npeers, npeers_rot;$/;" v file: -npeers_rot fprobe-ulog.c /^static int npeers, npeers_rot;$/;" v file: -nsnmp_rules fprobe-ulog.c /^static int nsnmp_rules;$/;" v file: -off_tl fprobe-ulog.c /^static int off_tl;$/;" v file: -oif fprobe-ulog.h /^ uint16_t oif;$/;" m struct:Flow -oif fprobe-ulog.h /^ uint16_t oif;$/;" m struct:Flow_F -oif fprobe-ulog.h /^ uint16_t oif;$/;" m struct:Flow_TL -oldincludedir Makefile /^oldincludedir = \/usr\/include$/;" m -p1 Makefile /^ p1=`echo $$p|sed 's\/$(EXEEXT)$$\/\/'`; \\$/;" m -parms fprobe-ulog.c /^static struct getopt_parms parms[] = {$/;" v file: -peer fprobe-ulog.c /^ struct sockaddr_nl peer;$/;" m struct:ipulog_handle file: -peer fprobe-ulog.h /^struct peer {$/;" s -peers fprobe-ulog.c /^static struct peer *peers;$/;" v file: -pending_head fprobe-ulog.c /^static struct Flow *pending_head, *pending_tail;$/;" v file: -pending_queue_length fprobe-ulog.c /^static unsigned pending_queue_length = 100;$/;" v file: -pending_queue_trace fprobe-ulog.c /^static unsigned pending_queue_trace, pending_queue_trace_candidate;$/;" v file: -pending_queue_trace_candidate fprobe-ulog.c /^static unsigned pending_queue_trace, pending_queue_trace_candidate;$/;" v file: -pending_tail fprobe-ulog.c /^static struct Flow *pending_head, *pending_tail;$/;" v file: -pid fprobe-ulog.c /^static pid_t pid;$/;" v file: -pidfile fprobe-ulog.c /^static FILE *pidfile;$/;" v file: -pidfilepath fprobe-ulog.c /^static char *pidfilepath;$/;" v file: -pkgdatadir Makefile /^pkgdatadir = $(datadir)\/fprobe-ulog$/;" m -pkgincludedir Makefile /^pkgincludedir = $(includedir)\/fprobe-ulog$/;" m -pkglibdir Makefile /^pkglibdir = $(libdir)\/fprobe-ulog$/;" m -pkts fprobe-ulog.h /^ unsigned long pkts;$/;" m struct:Flow -pkts_ignored fprobe-ulog.c /^static unsigned pkts_ignored, pkts_lost_capture, pkts_lost_unpending;$/;" v file: -pkts_lost_capture fprobe-ulog.c /^static unsigned pkts_ignored, pkts_lost_capture, pkts_lost_unpending;$/;" v file: -pkts_lost_unpending fprobe-ulog.c /^static unsigned pkts_ignored, pkts_lost_capture, pkts_lost_unpending;$/;" v file: -pkts_pending fprobe-ulog.c /^static unsigned pkts_pending, pkts_pending_done;$/;" v file: -pkts_pending_done fprobe-ulog.c /^static unsigned pkts_pending, pkts_pending_done;$/;" v file: -pkts_total fprobe-ulog.c /^static unsigned pkts_total, pkts_total_fragmented;$/;" v file: -pkts_total_fragmented fprobe-ulog.c /^static unsigned pkts_total, pkts_total_fragmented;$/;" v file: -prefix Makefile /^prefix = \/usr\/local$/;" m -program_transform_name Makefile /^program_transform_name = s,x,x,$/;" m -proto fprobe-ulog.h /^ uint8_t proto;$/;" m struct:Flow -proto fprobe-ulog.h /^ uint8_t proto;$/;" m struct:Flow_F -proto fprobe-ulog.h /^ uint8_t proto;$/;" m struct:Flow_TL -put_into fprobe-ulog.c /^int put_into(struct Flow *flow, int flag$/;" f -pw fprobe-ulog.c /^static struct passwd *pw = 0;$/;" v file: -qflag fprobe-ulog.c /^ qflag,$/;" e file: -rev Makefile /^ rev="$$subdir $$rev"; \\$/;" m -rev Makefile /^ rev="$$rev ."; \\$/;" m -rev Makefile /^ rev=''; for subdir in $$list; do \\$/;" m -rflag fprobe-ulog.c /^ rflag,$/;" e file: -root mem.c /^static struct Mem *root;$/;" v file: -sbinPROGRAMS_INSTALL Makefile /^sbinPROGRAMS_INSTALL = $(INSTALL_PROGRAM)$/;" m -sbin_PROGRAMS Makefile /^sbin_PROGRAMS = fprobe-ulog$(EXEEXT)$/;" m -sbindir Makefile /^sbindir = ${exec_prefix}\/sbin$/;" m -scan_cond fprobe-ulog.c /^static pthread_cond_t scan_cond = PTHREAD_COND_INITIALIZER;$/;" v file: -scan_frag_dreg fprobe-ulog.c /^static struct Flow *scan_frag_dreg;$/;" v file: -scan_interval fprobe-ulog.c /^static unsigned scan_interval = 5;$/;" v file: -scan_mutex fprobe-ulog.c /^static pthread_mutex_t scan_mutex = PTHREAD_MUTEX_INITIALIZER;$/;" v file: -scan_thread fprobe-ulog.c /^void *scan_thread()$/;" f -sched_max fprobe-ulog.c /^static int sched_min, sched_max;$/;" v file: -sched_min fprobe-ulog.c /^static int sched_min, sched_max;$/;" v file: -schedp fprobe-ulog.c /^static struct sched_param schedp;$/;" v file: -sec fprobe-ulog.h /^ time_t sec;$/;" m struct:Time -seq fprobe-ulog.h /^ uint32_t seq;$/;" m struct:peer -setuser fprobe-ulog.c /^void setuser() {$/;" f -sflag fprobe-ulog.c /^ sflag,$/;" e file: -sharedstatedir Makefile /^sharedstatedir = ${prefix}\/com$/;" m -shuffle_table hash.c /^static uint8_t shuffle_table[256];$/;" v file: -sig_mask fprobe-ulog.c /^static sigset_t sig_mask;$/;" v file: -sighandler fprobe-ulog.c /^void sighandler(int sig)$/;" f -sigs fprobe-ulog.c /^static int sigs;$/;" v file: -sip fprobe-ulog.h /^ struct in_addr sip;$/;" m struct:Flow -sip fprobe-ulog.h /^ struct in_addr sip;$/;" m struct:Flow_F -sip fprobe-ulog.h /^ struct in_addr sip;$/;" m struct:Flow_TL -size fprobe-ulog.h /^ unsigned long size;$/;" m struct:Flow -sizeF fprobe-ulog.h /^ unsigned long sizeF;$/;" m struct:Flow -sizeP fprobe-ulog.h /^ unsigned long sizeP;$/;" m struct:Flow -size_total fprobe-ulog.c /^static uint64_t size_total;$/;" v file: -snmp_index fprobe-ulog.c /^uint16_t snmp_index(char *name) {$/;" f -snmp_rule fprobe-ulog.h /^struct snmp_rule {$/;" s -snmp_rule_t fprobe-ulog.h /^} snmp_rule_t;$/;" v -snmp_rules fprobe-ulog.c /^static struct snmp_rule *snmp_rules;$/;" v file: -sock fprobe-ulog.h /^ int sock;$/;" m struct:peer -sockbufsize fprobe-ulog.c /^static int sockbufsize;$/;" v file: -sp fprobe-ulog.h /^ uint16_t sp;$/;" m struct:Flow -sp fprobe-ulog.h /^ uint16_t sp;$/;" m struct:Flow_TL -srcdir Makefile /^srcdir = .$/;" m -start_time fprobe-ulog.c /^static struct Time start_time;$/;" v file: -start_time_offset fprobe-ulog.c /^static long start_time_offset;$/;" v file: -subdir Makefile /^subdir = src$/;" m -sysconfdir Makefile /^sysconfdir = ${prefix}\/etc$/;" m -tags Makefile /^ tags="$$tags $$include_option=$$here\/$$subdir\/TAGS"; \\$/;" m -tags Makefile /^ tags=; \\$/;" m -target Makefile /^ target=`echo $@ | sed s\/-recursive\/\/`; \\$/;" m -target Makefile /^target = i686-pc-linux-gnu$/;" m -target_alias Makefile /^target_alias = $/;" m -target_cpu Makefile /^target_cpu = i686$/;" m -target_os Makefile /^target_os = linux-gnu$/;" m -target_triplet Makefile /^target_triplet = i686-pc-linux-gnu$/;" m -target_vendor Makefile /^target_vendor = pc$/;" m -tcp_flags fprobe-ulog.h /^ uint8_t tcp_flags;$/;" m struct:Flow -tflag fprobe-ulog.c /^ tflag,$/;" e file: -thid fprobe-ulog.c /^static pthread_t thid;$/;" v file: -top_builddir Makefile /^top_builddir = ..$/;" m -top_distdir Makefile /^ top_distdir="$$top_distdir" \\$/;" m -top_distdir Makefile /^ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \\$/;" m -top_srcdir Makefile /^top_srcdir = ..$/;" m -topsrcdirstrip Makefile /^ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \\$/;" m -tos fprobe-ulog.h /^ uint8_t tos;$/;" m struct:Flow -total_elements mem.c /^unsigned int total_elements;$/;" v -total_memory mem.c /^unsigned int total_memory;$/;" v -transform Makefile /^transform = $(program_transform_name)$/;" m -type fprobe-ulog.h /^ int type;$/;" m struct:peer -uflag fprobe-ulog.c /^ uflag,$/;" e file: -uint16_t my_inttypes.h /^typedef unsigned short uint16_t;$/;" t -uint32_t my_inttypes.h /^typedef unsigned int uint32_t;$/;" t -uint32_t my_inttypes.h /^typedef unsigned long uint32_t;$/;" t -uint64_t my_inttypes.h /^typedef unsigned long long uint64_t;$/;" t -uint64_t my_inttypes.h /^typedef unsigned long uint64_t;$/;" t -uint8_t my_inttypes.h /^typedef unsigned char uint8_t;$/;" t -ulog_gmask fprobe-ulog.c /^static uint32_t ulog_gmask = 1;$/;" v file: -ulog_handle fprobe-ulog.c /^static struct ipulog_handle *ulog_handle;$/;" v file: -unique Makefile /^ test -n "$$unique" || unique=$$empty_fix; \\$/;" m -unique Makefile /^ unique=`for i in $$list; do \\$/;" m -unpending_cond fprobe-ulog.c /^static pthread_cond_t unpending_cond = PTHREAD_COND_INITIALIZER;$/;" v file: -unpending_mutex fprobe-ulog.c /^static pthread_mutex_t unpending_mutex = PTHREAD_MUTEX_INITIALIZER;$/;" v file: -unpending_thread fprobe-ulog.c /^void *unpending_thread()$/;" f -unpending_timeout fprobe-ulog.c /^static int emit_timeout = EMIT_TIMEOUT, unpending_timeout = UNPENDING_TIMEOUT;$/;" v file: -usage fprobe-ulog.c /^void usage()$/;" f -usec fprobe-ulog.h /^ long usec;$/;" m struct:Time -verbosity fprobe-ulog.c /^static unsigned verbosity = 6;$/;" v file: -vflag fprobe-ulog.c /^ vflag,$/;" e file: diff --git a/trunk/version b/trunk/version deleted file mode 100644 index 9459d4b..0000000 --- a/trunk/version +++ /dev/null @@ -1 +0,0 @@ -1.1 -- 2.43.0