From e449a0d42554fe73cd8d43ad18f2117b725f9e2f Mon Sep 17 00:00:00 2001 From: Sam Roberts Date: Mon, 2 Mar 2009 15:59:03 -0800 Subject: Remove autotools. And some garbage local files that should not have been in upstream tarball. --- README.txt | 0 libnet/Makefile.am | 15 - libnet/Makefile.am.common | 10 - libnet/Makefile.in | 443 -- libnet/acconfig.h | 36 - libnet/acinclude.m4 | 463 -- libnet/aclocal.m4 | 1337 ---- libnet/autom4te.cache/output.0 | 6225 --------------- libnet/autom4te.cache/requests | 111 - libnet/autom4te.cache/traces.0 | 272 - libnet/config.guess | 1314 ---- libnet/config.sub | 1410 ---- libnet/configure | 6225 --------------- libnet/configure.in | 235 - libnet/doc/html/acconfig_8h-source.html | 49 - libnet/doc/html/annotated.html | 17 - libnet/doc/html/bpf_8h-source.html | 277 - libnet/doc/html/config_8h-source.html | 125 - libnet/doc/html/doxygen.css | 169 - libnet/doc/html/doxygen.png | Bin 2352 -> 0 bytes libnet/doc/html/files.html | 29 - libnet/doc/html/functions.html | 26 - libnet/doc/html/functions_vars.html | 26 - libnet/doc/html/getopt_8h-source.html | 97 - libnet/doc/html/globals.html | 219 - libnet/doc/html/globals_defs.html | 104 - libnet/doc/html/globals_func.html | 136 - libnet/doc/html/gnuc_8h-source.html | 56 - libnet/doc/html/graph_legend.dot | 22 - libnet/doc/html/graph_legend.html | 75 - libnet/doc/html/ifaddrlist_8h-source.html | 65 - libnet/doc/html/in__systm_8h-source.html | 90 - libnet/doc/html/index.html | 17 - libnet/doc/html/libnet-asn1_8h-source.html | 268 - libnet/doc/html/libnet-functions_8h-source.html | 742 -- libnet/doc/html/libnet-functions_8h.html | 8844 ---------------------- libnet/doc/html/libnet-headers_8h-source.html | 1655 ---- libnet/doc/html/libnet-headers_8h.html | 3053 -------- libnet/doc/html/libnet-macros_8h-source.html | 161 - libnet/doc/html/libnet-macros_8h.html | 358 - libnet/doc/html/libnet-structures_8h-source.html | 233 - libnet/doc/html/libnet-types_8h-source.html | 58 - libnet/doc/html/libnet_8h-source.html | 119 - libnet/doc/html/libnet_8h.html | 24 - libnet/doc/html/structlibnet__802__1q__hdr.html | 145 - libnet/doc/html/structlibnet__802__1x__hdr.html | 97 - libnet/doc/libnet.doxygen.conf | 1102 --- libnet/doc/man/man3/libnet-functions.h.3 | 3137 -------- libnet/doc/man/man3/libnet-headers.h.3 | 1872 ----- libnet/doc/man/man3/libnet-macros.h.3 | 172 - libnet/doc/man/man3/libnet.h.3 | 17 - libnet/doc/man/man3/libnet_802_1q_hdr.3 | 53 - libnet/doc/man/man3/libnet_802_1x_hdr.3 | 41 - libnet/include/Makefile.am | 7 - libnet/include/Makefile.in | 395 - libnet/include/libnet.h.in | 132 - libnet/include/libnet/.#libnet-functions.h.1.28 | 1582 ---- libnet/include/libnet/Makefile.am | 12 - libnet/include/stamp-h.in | 1 - libnet/install-sh | 250 - libnet/libnet-config.in | 62 - libnet/libnet.doxygen.conf | 1102 --- libnet/missing | 283 - libnet/mkinstalldirs | 40 - libnet/sample/.#icmp_unreach.c.1.2 | 190 - libnet/sample/.icmp_redirect.c.swp | Bin 16384 -> 0 bytes libnet/sample/Makefile.am | 63 - libnet/sample/Makefile.in | 729 -- libnet/src/.#libnet_build_icmp.c.1.12 | 558 -- libnet/src/.#libnet_internal.c.1.10 | 308 - libnet/src/Makefile.am | 71 - libnet/src/Makefile.in | 428 -- libnet/version.h.in | 6 - 73 files changed, 48065 deletions(-) delete mode 100644 README.txt delete mode 100644 libnet/Makefile.am delete mode 100644 libnet/Makefile.am.common delete mode 100644 libnet/Makefile.in delete mode 100644 libnet/acconfig.h delete mode 100644 libnet/acinclude.m4 delete mode 100644 libnet/aclocal.m4 delete mode 100644 libnet/autom4te.cache/output.0 delete mode 100644 libnet/autom4te.cache/requests delete mode 100644 libnet/autom4te.cache/traces.0 delete mode 100644 libnet/config.guess delete mode 100644 libnet/config.sub delete mode 100755 libnet/configure delete mode 100644 libnet/configure.in delete mode 100644 libnet/doc/html/acconfig_8h-source.html delete mode 100644 libnet/doc/html/annotated.html delete mode 100644 libnet/doc/html/bpf_8h-source.html delete mode 100644 libnet/doc/html/config_8h-source.html delete mode 100644 libnet/doc/html/doxygen.css delete mode 100644 libnet/doc/html/doxygen.png delete mode 100644 libnet/doc/html/files.html delete mode 100644 libnet/doc/html/functions.html delete mode 100644 libnet/doc/html/functions_vars.html delete mode 100644 libnet/doc/html/getopt_8h-source.html delete mode 100644 libnet/doc/html/globals.html delete mode 100644 libnet/doc/html/globals_defs.html delete mode 100644 libnet/doc/html/globals_func.html delete mode 100644 libnet/doc/html/gnuc_8h-source.html delete mode 100644 libnet/doc/html/graph_legend.dot delete mode 100644 libnet/doc/html/graph_legend.html delete mode 100644 libnet/doc/html/ifaddrlist_8h-source.html delete mode 100644 libnet/doc/html/in__systm_8h-source.html delete mode 100644 libnet/doc/html/index.html delete mode 100644 libnet/doc/html/libnet-asn1_8h-source.html delete mode 100644 libnet/doc/html/libnet-functions_8h-source.html delete mode 100644 libnet/doc/html/libnet-functions_8h.html delete mode 100644 libnet/doc/html/libnet-headers_8h-source.html delete mode 100644 libnet/doc/html/libnet-headers_8h.html delete mode 100644 libnet/doc/html/libnet-macros_8h-source.html delete mode 100644 libnet/doc/html/libnet-macros_8h.html delete mode 100644 libnet/doc/html/libnet-structures_8h-source.html delete mode 100644 libnet/doc/html/libnet-types_8h-source.html delete mode 100644 libnet/doc/html/libnet_8h-source.html delete mode 100644 libnet/doc/html/libnet_8h.html delete mode 100644 libnet/doc/html/structlibnet__802__1q__hdr.html delete mode 100644 libnet/doc/html/structlibnet__802__1x__hdr.html delete mode 100644 libnet/doc/libnet.doxygen.conf delete mode 100644 libnet/doc/man/man3/libnet-functions.h.3 delete mode 100644 libnet/doc/man/man3/libnet-headers.h.3 delete mode 100644 libnet/doc/man/man3/libnet-macros.h.3 delete mode 100644 libnet/doc/man/man3/libnet.h.3 delete mode 100644 libnet/doc/man/man3/libnet_802_1q_hdr.3 delete mode 100644 libnet/doc/man/man3/libnet_802_1x_hdr.3 delete mode 100644 libnet/include/Makefile.am delete mode 100644 libnet/include/Makefile.in delete mode 100644 libnet/include/libnet.h.in delete mode 100644 libnet/include/libnet/.#libnet-functions.h.1.28 delete mode 100644 libnet/include/libnet/Makefile.am delete mode 100644 libnet/include/stamp-h.in delete mode 100755 libnet/install-sh delete mode 100644 libnet/libnet-config.in delete mode 100644 libnet/libnet.doxygen.conf delete mode 100755 libnet/missing delete mode 100755 libnet/mkinstalldirs delete mode 100644 libnet/sample/.#icmp_unreach.c.1.2 delete mode 100644 libnet/sample/.icmp_redirect.c.swp delete mode 100644 libnet/sample/Makefile.am delete mode 100644 libnet/sample/Makefile.in delete mode 100644 libnet/src/.#libnet_build_icmp.c.1.12 delete mode 100644 libnet/src/.#libnet_internal.c.1.10 delete mode 100644 libnet/src/Makefile.am delete mode 100644 libnet/src/Makefile.in delete mode 100644 libnet/version.h.in diff --git a/README.txt b/README.txt deleted file mode 100644 index e69de29..0000000 diff --git a/libnet/Makefile.am b/libnet/Makefile.am deleted file mode 100644 index cc732b2..0000000 --- a/libnet/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -# $Id: Makefile.am,v 1.7 2004/03/01 20:26:11 mike Exp $ -# -# Libnet automake information file -# Copyright (c) 1998 - 2004 Mike D. Schiffman -# All rights reserved. -# -# Process this file with automake to produce a Makefile.in script. - -include $(top_srcdir)/Makefile.am.common - -SUBDIRS = include src sample - -EXTRA_DIST = Makefile.am.common - -bin_scripts = libnet-config diff --git a/libnet/Makefile.am.common b/libnet/Makefile.am.common deleted file mode 100644 index bbb6a8c..0000000 --- a/libnet/Makefile.am.common +++ /dev/null @@ -1,10 +0,0 @@ -# $Id: Makefile.am.common,v 1.3 2004/01/03 20:31:00 mike Exp $ -# -# Libnet automake information file -# Copyright (c) 1998 - 2004 Mike D. Schiffman -# All rights reserved. -# - -AUTOMAKE_OPTIONS = foreign no-dependencies - -DISTCLEANFILES = *~ diff --git a/libnet/Makefile.in b/libnet/Makefile.in deleted file mode 100644 index 64bce5e..0000000 --- a/libnet/Makefile.in +++ /dev/null @@ -1,443 +0,0 @@ -# Makefile.in generated by automake 1.6.3 from Makefile.am. -# @configure_input@ - -# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# 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@ - -# $Id: Makefile.in,v 1.16 2004/03/11 18:50:20 mike Exp $ -# -# Libnet automake information file -# Copyright (c) 1998 - 2004 Mike D. Schiffman -# All rights reserved. -# -# Process this file with automake to produce a Makefile.in script. - -# $Id: Makefile.in,v 1.16 2004/03/11 18:50:20 mike Exp $ -# -# Libnet automake information file -# Copyright (c) 1998 - 2004 Mike D. Schiffman -# All rights reserved. -# -SHELL = @SHELL@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -bindir = @bindir@ -sbindir = @sbindir@ -libexecdir = @libexecdir@ -datadir = @datadir@ -sysconfdir = @sysconfdir@ -sharedstatedir = @sharedstatedir@ -localstatedir = @localstatedir@ -libdir = @libdir@ -infodir = @infodir@ -mandir = @mandir@ -includedir = @includedir@ -oldincludedir = /usr/include -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = . - -ACLOCAL = @ACLOCAL@ -AUTOCONF = @AUTOCONF@ -AUTOMAKE = @AUTOMAKE@ -AUTOHEADER = @AUTOHEADER@ - -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_HEADER = $(INSTALL_DATA) -transform = @program_transform_name@ -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_alias = @build_alias@ -build_triplet = @build@ -host_alias = @host_alias@ -host_triplet = @host@ -target_alias = @target_alias@ -target_triplet = @target@ - -EXEEXT = @EXEEXT@ -OBJEXT = @OBJEXT@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -ADDITIONAL_LIBS = @ADDITIONAL_LIBS@ -AMTAR = @AMTAR@ -AWK = @AWK@ -CC = @CC@ -DEPDIR = @DEPDIR@ -ENDIANESS = @ENDIANESS@ -HAVE_PACKET_SOCKET = @HAVE_PACKET_SOCKET@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LIBNET_CONFIG_CFLAGS = @LIBNET_CONFIG_CFLAGS@ -LIBNET_CONFIG_DEFINES = @LIBNET_CONFIG_DEFINES@ -LIBNET_CONFIG_LIBS = @LIBNET_CONFIG_LIBS@ -LIBNET_VERSION = @LIBNET_VERSION@ -MAINT = @MAINT@ -PACKAGE = @PACKAGE@ -RANLIB = @RANLIB@ -STRIP = @STRIP@ -VERSION = @VERSION@ -am__include = @am__include@ -am__quote = @am__quote@ -install_sh = @install_sh@ - -AUTOMAKE_OPTIONS = foreign no-dependencies - -DISTCLEANFILES = *~ - -SUBDIRS = include src sample - -EXTRA_DIST = Makefile.am.common - -bin_scripts = libnet-config -subdir = . -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/include/config.h -CONFIG_CLEAN_FILES = version.h libnet-config -depcomp = -am__depfiles_maybe = -DIST_SOURCES = - -RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \ - uninstall-info-recursive all-recursive install-data-recursive \ - install-exec-recursive installdirs-recursive install-recursive \ - uninstall-recursive check-recursive installcheck-recursive -DIST_COMMON = README Makefile.am Makefile.in acconfig.h acinclude.m4 \ - aclocal.m4 config.guess config.sub configure configure.in \ - install-sh libnet-config.in missing mkinstalldirs version.h.in -DIST_SUBDIRS = $(SUBDIRS) -all: all-recursive - -.SUFFIXES: - -am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/Makefile.am.common $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && \ - $(AUTOMAKE) --foreign Makefile -Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe) - -$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck -$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) - cd $(srcdir) && $(AUTOCONF) - -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in acinclude.m4 - cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) -version.h: $(top_builddir)/config.status version.h.in - cd $(top_builddir) && $(SHELL) ./config.status $@ -libnet-config: $(top_builddir)/config.status libnet-config.in - cd $(top_builddir) && $(SHELL) ./config.status $@ -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 - -ETAGS = etags -ETAGSFLAGS = - -tags: TAGS - -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-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -f $$subdir/TAGS && tags="$$tags -i $$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; }'`; \ - test -z "$(ETAGS_ARGS)$$tags$$unique" \ - || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_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 -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) - -top_distdir = . -distdir = $(PACKAGE)-$(VERSION) - -am__remove_distdir = \ - { test ! -d $(distdir) \ - || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -fr $(distdir); }; } - -GZIP_ENV = --best -distcleancheck_listfiles = find . -type f -print - -distdir: $(DISTFILES) - $(am__remove_distdir) - mkdir $(distdir) - $(mkinstalldirs) $(distdir)/. $(distdir)/include - @list='$(DISTFILES)'; for file in $$list; do \ - 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"; \ - $(mkinstalldirs) "$(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='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d $(distdir)/$$subdir \ - || mkdir $(distdir)/$$subdir \ - || exit 1; \ - (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 - $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - $(am__remove_distdir) - -dist dist-all: distdir - $(AMTAR) chof - $(distdir) | 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 - $(am__remove_distdir) - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - - 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` \ - && 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 \ - && (test `find $$dc_install_base -type f -print | wc -l` -le 1 \ - || { echo "ERROR: files left after uninstall:" ; \ - find $$dc_install_base -type f -print ; \ - exit 1; } >&2 ) \ - && $(MAKE) $(AM_MAKEFLAGS) dist-gzip \ - && rm -f $(distdir).tar.gz \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck - $(am__remove_distdir) - @echo "$(distdir).tar.gz is ready for distribution" | \ - sed 'h;s/./=/g;p;x;p;x' -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 after distclean:" ; \ - $(distcleancheck_listfiles) ; \ - exit 1; } >&2 -check-am: all-am -check: check-recursive -all-am: Makefile -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_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -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) -distclean-am: clean-am distclean-generic distclean-tags - -dvi: dvi-recursive - -dvi-am: - -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 autom4te.cache -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-generic - -uninstall-am: uninstall-info-am - -uninstall-info: uninstall-info-recursive - -.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \ - clean-generic clean-recursive dist dist-all dist-gzip distcheck \ - distclean distclean-generic distclean-recursive distclean-tags \ - distcleancheck distdir dvi dvi-am dvi-recursive info info-am \ - info-recursive install install-am install-data install-data-am \ - install-data-recursive install-exec install-exec-am \ - install-exec-recursive install-info install-info-am \ - install-info-recursive install-man install-recursive \ - install-strip installcheck installcheck-am installdirs \ - installdirs-am installdirs-recursive maintainer-clean \ - maintainer-clean-generic maintainer-clean-recursive mostlyclean \ - mostlyclean-generic mostlyclean-recursive tags tags-recursive \ - uninstall uninstall-am uninstall-info-am \ - uninstall-info-recursive uninstall-recursive - -# 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/libnet/acconfig.h b/libnet/acconfig.h deleted file mode 100644 index 2d220ef..0000000 --- a/libnet/acconfig.h +++ /dev/null @@ -1,36 +0,0 @@ -/* -dnl $Id: acconfig.h,v 1.2 2004/01/03 20:31:00 mike Exp $ -dnl -dnl Libnet autoconfiguration acconfig.h file -dnl Copyright (c) 1998 - 2004 Mike D. Schiffman -dnl All rights reserved. -dnl -dnl Process this file with autoheader to produce a config.h file. -dnl -*/ - -#undef LIBNET_BSDISH_OS -#undef LIBNET_BSD_BYTE_SWAP -#undef DLPI_DEV_PREFIX -#undef HAVE_DEV_DLPI -#undef HAVE_SOLARIS -#undef HAVE_SOLARIS_IPV6 -#undef HAVE_HPUX11 -#undef HAVE_SOCKADDR_SA_LEN -#undef HAVE_DLPI -#undef HAVE_PACKET_SOCKET -#undef HAVE_STRUCT_IP_CSUM -#undef HAVE_LIB_PCAP -#undef LBL_ALIGN -#undef STUPID_SOLARIS_CHECKSUM_BUG -#undef _BSD_SOURCE -#undef __BSD_SOURCE -#undef __FAVOR_BSD -#undef LIBNET_BIG_ENDIAN -#undef LIBNET_LIL_ENDIAN -#undef NO_SNPRINTF - - -/* -dnl EOF -*/ diff --git a/libnet/acinclude.m4 b/libnet/acinclude.m4 deleted file mode 100644 index 80f2f56..0000000 --- a/libnet/acinclude.m4 +++ /dev/null @@ -1,463 +0,0 @@ -dnl $Id: acinclude.m4,v 1.3 2004/01/15 23:53:06 mike Exp $ -dnl -dnl Libnet specific autoconf macros -dnl Copyright (c) 1998 - 2004 Mike D. Schiffman -dnl All rights reserved. -dnl - -dnl -dnl Check for the Linux /proc filesystem -dnl -dnl usage: AC_LIBNET_LINUX_PROCFS -dnl results: HAVE_LINUX_PROCFS -dnl -AC_DEFUN(AC_LIBNET_LINUX_PROCFS, - [AC_MSG_CHECKING(for Linux proc filesystem) - AC_CACHE_VAL(ac_cv_libnet_linux_procfs, - if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" ; then - ac_cv_libnet_linux_procfs=yes - else - ac_cv_libnet_linux_procfs=no - fi) - AC_MSG_RESULT($ac_cv_libnet_linux_procfs) - if test $ac_cv_libnet_linux_procfs = yes ; then - AC_DEFINE(HAVE_LINUX_PROCFS, 1, - [Define if you have the Linux /proc filesystem.]) - fi]) - -dnl -dnl Checks to see if this linux kernel has a working PF_PACKET -dnl -dnl usage: -dnl -dnl AC_LIBNET_CHECK_PF_PACKET -dnl -dnl results: -dnl -dnl HAVE_PACKET_SOCKET (DEFINED) -dnl - -AC_DEFUN(AC_LIBNET_CHECK_PF_PACKET, -[ - AC_MSG_CHECKING(for packet socket (PF_SOCKET)) - AC_CACHE_VAL(ac_libnet_have_packet_socket, - - [case "$target_os" in - - linux) - ac_libnet_have_packet_socket = no - ;; - *) - - cat > pf_packet-test.c << EOF -#include -#include -#include -#include -#include -#include /* for the glibc version number */ -#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 -#include -#include /* the L2 protocols */ -#else -#include -#include -#include /* The L2 protocols */ -#endif - -#ifndef SOL_PACKET -#define SOL_PACKET 263 -#endif /* SOL_PACKET */ - -int -main(int argc, char **argv) -{ - int fd; - - fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); - if (fd == -1) - { - if (errno == EPERM) - { - /* user's UID != 0 */ - printf("probably"); - exit (EXIT_FAILURE); - } - printf("no"); - exit (EXIT_FAILURE); - } - printf("yes"); - exit (EXIT_SUCCESS); -} -EOF - ${CC-cc} -o pf_packet-test $CFLAGS pf_packet-test.c >/dev/null 2>&1 - - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x ./pf_packet-test ; then - ac_libnet_have_packet_socket=choked - else - ac_libnet_have_packet_socket=`./pf_packet-test`; - fi - if test $ac_libnet_have_packet_socket = choked; then - AC_MSG_RESULT(test program compile choked... assuming no) - elif test $ac_libnet_have_packet_socket = yes; then - AC_MSG_RESULT(yes) - elif test $ac_libnet_have_packet_socket = probably; then - AC_MSG_RESULT(test program got EPERM... assuming yes) - elif test $ac_libnet_have_packet_socket = no; then - AC_MSG_RESULT(no) - fi - - rm -f pf_packet-test* core core.pf_packet-test - ;; - esac]) - - if test $ac_libnet_have_packet_socket = yes -o $ac_libnet_have_packet_socket = probably; then - AC_DEFINE(HAVE_PACKET_SOCKET) - fi -]) - -dnl -dnl Looks for a previous libnet version and attempts to determine which verion -dnl it is. Version 0.8 was the first version that actually knew internally -dnl what version it was. -dnl -dnl usage: -dnl -dnl AC_LIBNET_CHECK_LIBNET_VERSION -dnl -dnl results: -dnl -dnl -dnl - -AC_DEFUN(AC_LIBNET_CHECK_LIBNET_VER, -[ - AC_CHECK_LIB(net, libnet_build_ip, AC_MSG_CHECKING(version) \ - -changequote(<<, >>)dnl - if [[ ! -f $LIB_PREFIX/libnet.a ]] ; then -changequote([, ])dnl - AC_MSG_RESULT($LIB_PREFIX/libnet.a doesn't exist) - AC_MSG_RESULT(previous libnet install lives elsewhere, you should probably find it) - else - __LIBNET_VERSION=`strings $LIB_PREFIX/libnet.a | grep "libnet version"\ - | cut -f3 -d" "`;\ - if test -z "$__LIBNET_VERSION"; then - AC_MSG_RESULT(<0.8) - else - AC_MSG_RESULT($__LIBNET_VERSION) - fi - fi\ - ) -]) - - -dnl -dnl Checks to see if this linux kernel uses ip_sum or ip_csum -dnl (Pulled from queso) -dnl -dnl usage: -dnl -dnl AC_LIBNET_CHECK_IP_CSUM -dnl -dnl results: -dnl -dnl HAVE_STRUCT_IP_CSUM (DEFINED) -dnl - -AC_DEFUN(AC_LIBNET_CHECK_IP_CSUM, -[ - AC_MSG_CHECKING([struct ip contains ip_csum]) - AC_TRY_COMPILE([ - #define __BSD_SOURCE - #define _BSD_SOURCE - #include - #include - #include - #include ], - [ - struct ip ip; - ip.ip_csum = 0; - ], - [AC_MSG_RESULT(yes); - AC_DEFINE(HAVE_STRUCT_IP_CSUM)], - [AC_MSG_RESULT(no); - ]) -]) - -dnl -dnl Checks to see if unaligned memory accesses fail -dnl (Pulled from libpcap) -dnl -dnl usage: -dnl -dnl AC_LBL_UNALIGNED_ACCESS -dnl -dnl results: -dnl -dnl LBL_ALIGN (DEFINED) -dnl - -AC_DEFUN(AC_LBL_UNALIGNED_ACCESS, - [AC_MSG_CHECKING(if unaligned accesses fail) - AC_CACHE_VAL(ac_cv_lbl_unaligned_fail, - [case "$target_cpu" in - - alpha|hp*|mips|sparc) - ac_cv_lbl_unaligned_fail=yes - ;; - - *) - cat >conftest.c < -# include -# include - unsigned char a[[5]] = { 1, 2, 3, 4, 5 }; - main() - { - unsigned int i; - pid_t pid; - int status; - /* avoid "core dumped" message */ - pid = fork(); - if (pid < 0) - { - exit(2); - } - if (pid > 0) - { - /* parent */ - pid = waitpid(pid, &status, 0); - if (pid < 0) - { - exit(3); - } - exit(!WIFEXITED(status)); - } - /* child */ - i = *(unsigned int *)&a[[1]]; - printf("%d\n", i); - exit(0); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \ - conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then - dnl failed to compile for some reason - ac_cv_lbl_unaligned_fail=yes - else - ./conftest > conftest.out - if test ! -s conftest.out ; then - ac_cv_lbl_unaligned_fail=yes - else - ac_cv_lbl_unaligned_fail=no - fi - fi - rm -f conftest* core core.conftest - ;; - esac]) - AC_MSG_RESULT($ac_cv_lbl_unaligned_fail) - if test $ac_cv_lbl_unaligned_fail = yes ; then - AC_DEFINE(LBL_ALIGN) - fi -]) - - -dnl -dnl Checks endianess -dnl -dnl usage: -dnl -dnl AC_LIBNET_ENDIAN_CHECK -dnl -dnl results: -dnl -dnl LIBNET_BIG_ENDIAN = 1 or -dnl LIBNET_LIL_ENDIAN = 1 -dnl - -AC_DEFUN(AC_LIBNET_ENDIAN_CHECK, - [AC_MSG_CHECKING(machine endianess) - - cat > conftest.c << EOF -# include -# include - - int main() - { - union - { - short s; - char c[[sizeof(short)]]; - } un; - - un.s = 0x0102; - if (sizeof (short) == 2) - { - if (un.c [[0]] == 1 && un.c [[1]] == 2) - { - printf("B\n"); - } - else - { - if (un.c [[0]] == 2 && un.c [[1]] == 1) - { - printf("L\n"); - } - } - } - else - { - printf("?\n"); - } - return (EXIT_SUCCESS); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then -dnl failed to compile for some reason - ac_cv_libnet_endianess=unknown - else - ./conftest > conftest.out - result=`cat conftest.out` - if test $result = "B"; then - ac_cv_libnet_endianess=big - elif test $result = "L"; then - ac_cv_libnet_endianess=lil - else - ac_cv_libnet_endianess=unknown - fi - fi - rm -f conftest* core core.conftest - - AC_MSG_RESULT($ac_cv_libnet_endianess) - - if test $ac_cv_libnet_endianess = big ; then - AC_DEFINE(LIBNET_BIG_ENDIAN) - ENDIANESS="LIBNET_BIG_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN" - elif test $ac_cv_libnet_endianess = lil ; then - AC_DEFINE(LIBNET_LIL_ENDIAN) - ENDIANESS="LIBNET_LIL_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN" - fi - ]) - -dnl -dnl Improved version of AC_CHECK_LIB -dnl -dnl Thanks to John Hawkinson (jhawk@mit.edu) -dnl -dnl usage: -dnl -dnl AC_LBL_CHECK_LIB(LIBRARY, FUNCTION [, ACTION-IF-FOUND [, -dnl ACTION-IF-NOT-FOUND [, OTHER-LIBRARIES]]]) -dnl -dnl results: -dnl -dnl LIBS -dnl - -define(AC_LBL_CHECK_LIB, -[AC_MSG_CHECKING([for $2 in -l$1]) -dnl Use a cache variable name containing both the library and function name, -dnl because the test really is for library $1 defining function $2, not -dnl just for library $1. Separate tests with the same $1 and different $2's -dnl may have different results. -ac_lib_var=`echo $1['_']$2['_']$5 | sed 'y%./+- %__p__%'` -AC_CACHE_VAL(ac_cv_lbl_lib_$ac_lib_var, -[ac_save_LIBS="$LIBS" -LIBS="-l$1 $5 $LIBS" -AC_TRY_LINK(dnl -ifelse([$2], [main], , dnl Avoid conflicting decl of main. -[/* Override any gcc2 internal prototype to avoid an error. */ -]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus -extern "C" -#endif -])dnl -[/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $2(); -]), - [$2()], - eval "ac_cv_lbl_lib_$ac_lib_var=yes", - eval "ac_cv_lbl_lib_$ac_lib_var=no") -LIBS="$ac_save_LIBS" -])dnl -if eval "test \"`echo '$ac_cv_lbl_lib_'$ac_lib_var`\" = yes"; then - AC_MSG_RESULT(yes) - ifelse([$3], , -[changequote(, )dnl - ac_tr_lib=HAVE_LIB`echo $1 | sed -e 's/[^a-zA-Z0-9_]/_/g' \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'` -changequote([, ])dnl - AC_DEFINE_UNQUOTED($ac_tr_lib) - LIBS="-l$1 $LIBS" -], [$3]) -else - AC_MSG_RESULT(no) -ifelse([$4], , , [$4 -])dnl -fi -]) - -dnl -dnl AC_LBL_LIBRARY_NET -dnl -dnl This test is for network applications that need socket() and -dnl gethostbyname() -ish functions. Under Solaris, those applications -dnl need to link with "-lsocket -lnsl". Under IRIX, they need to link -dnl with "-lnsl" but should *not* link with "-lsocket" because -dnl libsocket.a breaks a number of things (for instance: -dnl gethostbyname() under IRIX 5.2, and snoop sockets under most -dnl versions of IRIX). -dnl -dnl Unfortunately, many application developers are not aware of this, -dnl and mistakenly write tests that cause -lsocket to be used under -dnl IRIX. It is also easy to write tests that cause -lnsl to be used -dnl under operating systems where neither are necessary (or useful), -dnl such as SunOS 4.1.4, which uses -lnsl for TLI. -dnl -dnl This test exists so that every application developer does not test -dnl this in a different, and subtly broken fashion. - -dnl It has been argued that this test should be broken up into two -dnl seperate tests, one for the resolver libraries, and one for the -dnl libraries necessary for using Sockets API. Unfortunately, the two -dnl are carefully intertwined and allowing the autoconf user to use -dnl them independantly potentially results in unfortunate ordering -dnl dependancies -- as such, such component macros would have to -dnl carefully use indirection and be aware if the other components were -dnl executed. Since other autoconf macros do not go to this trouble, -dnl and almost no applications use sockets without the resolver, this -dnl complexity has not been implemented. -dnl -dnl The check for libresolv is in case you are attempting to link -dnl statically and happen to have a libresolv.a lying around (and no -dnl libnsl.a). -dnl -AC_DEFUN(AC_LBL_LIBRARY_NET, [ - # Most operating systems have gethostbyname() in the default searched - # libraries (i.e. libc): - AC_CHECK_FUNC(gethostbyname, , - # Some OSes (eg. Solaris) place it in libnsl: - AC_LBL_CHECK_LIB(nsl, gethostbyname, , - # Some strange OSes (SINIX) have it in libsocket: - AC_LBL_CHECK_LIB(socket, gethostbyname, , - # Unfortunately libsocket sometimes depends on libnsl. - # AC_CHECK_LIB's API is essentially broken so the - # following ugliness is necessary: - AC_LBL_CHECK_LIB(socket, gethostbyname, - LIBS="-lsocket -lnsl $LIBS", - AC_CHECK_LIB(resolv, gethostbyname), - -lnsl)))) - AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket, , - AC_LBL_CHECK_LIB(socket, socket, LIBS="-lsocket -lnsl $LIBS", , - -lnsl))) - # DLPI needs putmsg under HPUX so test for -lstr while we're at it - AC_CHECK_LIB(str, putmsg) - ]) - diff --git a/libnet/aclocal.m4 b/libnet/aclocal.m4 deleted file mode 100644 index db62471..0000000 --- a/libnet/aclocal.m4 +++ /dev/null @@ -1,1337 +0,0 @@ -# aclocal.m4 generated automatically by aclocal 1.6.3 -*- Autoconf -*- - -# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. -# This file 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. - -dnl $Id: aclocal.m4,v 1.9 2004/03/01 20:26:11 mike Exp $ -dnl -dnl Libnet specific autoconf macros -dnl Copyright (c) 1998 - 2004 Mike D. Schiffman -dnl All rights reserved. -dnl - -dnl -dnl Check for the Linux /proc filesystem -dnl -dnl usage: AC_LIBNET_LINUX_PROCFS -dnl results: HAVE_LINUX_PROCFS -dnl -AC_DEFUN(AC_LIBNET_LINUX_PROCFS, - [AC_MSG_CHECKING(for Linux proc filesystem) - AC_CACHE_VAL(ac_cv_libnet_linux_procfs, - if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" ; then - ac_cv_libnet_linux_procfs=yes - else - ac_cv_libnet_linux_procfs=no - fi) - AC_MSG_RESULT($ac_cv_libnet_linux_procfs) - if test $ac_cv_libnet_linux_procfs = yes ; then - AC_DEFINE(HAVE_LINUX_PROCFS, 1, - [Define if you have the Linux /proc filesystem.]) - fi]) - -dnl -dnl Checks to see if this linux kernel has a working PF_PACKET -dnl -dnl usage: -dnl -dnl AC_LIBNET_CHECK_PF_PACKET -dnl -dnl results: -dnl -dnl HAVE_PACKET_SOCKET (DEFINED) -dnl - -AC_DEFUN(AC_LIBNET_CHECK_PF_PACKET, -[ - AC_MSG_CHECKING(for packet socket (PF_SOCKET)) - AC_CACHE_VAL(ac_libnet_have_packet_socket, - - [case "$target_os" in - - linux) - ac_libnet_have_packet_socket = no - ;; - *) - - cat > pf_packet-test.c << EOF -#include -#include -#include -#include -#include -#include /* for the glibc version number */ -#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 -#include -#include /* the L2 protocols */ -#else -#include -#include -#include /* The L2 protocols */ -#endif - -#ifndef SOL_PACKET -#define SOL_PACKET 263 -#endif /* SOL_PACKET */ - -int -main(int argc, char **argv) -{ - int fd; - - fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); - if (fd == -1) - { - if (errno == EPERM) - { - /* user's UID != 0 */ - printf("probably"); - exit (EXIT_FAILURE); - } - printf("no"); - exit (EXIT_FAILURE); - } - printf("yes"); - exit (EXIT_SUCCESS); -} -EOF - ${CC-cc} -o pf_packet-test $CFLAGS pf_packet-test.c >/dev/null 2>&1 - - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x ./pf_packet-test ; then - ac_libnet_have_packet_socket=choked - else - ac_libnet_have_packet_socket=`./pf_packet-test`; - fi - if test $ac_libnet_have_packet_socket = choked; then - AC_MSG_RESULT(test program compile choked... assuming no) - elif test $ac_libnet_have_packet_socket = yes; then - AC_MSG_RESULT(yes) - elif test $ac_libnet_have_packet_socket = probably; then - AC_MSG_RESULT(test program got EPERM... assuming yes) - elif test $ac_libnet_have_packet_socket = no; then - AC_MSG_RESULT(no) - fi - - rm -f pf_packet-test* core core.pf_packet-test - ;; - esac]) - - if test $ac_libnet_have_packet_socket = yes -o $ac_libnet_have_packet_socket = probably; then - AC_DEFINE(HAVE_PACKET_SOCKET) - fi -]) - -dnl -dnl Looks for a previous libnet version and attempts to determine which verion -dnl it is. Version 0.8 was the first version that actually knew internally -dnl what version it was. -dnl -dnl usage: -dnl -dnl AC_LIBNET_CHECK_LIBNET_VERSION -dnl -dnl results: -dnl -dnl -dnl - -AC_DEFUN(AC_LIBNET_CHECK_LIBNET_VER, -[ - AC_CHECK_LIB(net, libnet_build_ip, AC_MSG_CHECKING(version) \ - -changequote(<<, >>)dnl - if [[ ! -f $LIB_PREFIX/libnet.a ]] ; then -changequote([, ])dnl - AC_MSG_RESULT($LIB_PREFIX/libnet.a doesn't exist) - AC_MSG_RESULT(previous libnet install lives elsewhere, you should probably find it) - else - __LIBNET_VERSION=`strings $LIB_PREFIX/libnet.a | grep "libnet version"\ - | cut -f3 -d" "`;\ - if test -z "$__LIBNET_VERSION"; then - AC_MSG_RESULT(<0.8) - else - AC_MSG_RESULT($__LIBNET_VERSION) - fi - fi\ - ) -]) - - -dnl -dnl Checks to see if this linux kernel uses ip_sum or ip_csum -dnl (Pulled from queso) -dnl -dnl usage: -dnl -dnl AC_LIBNET_CHECK_IP_CSUM -dnl -dnl results: -dnl -dnl HAVE_STRUCT_IP_CSUM (DEFINED) -dnl - -AC_DEFUN(AC_LIBNET_CHECK_IP_CSUM, -[ - AC_MSG_CHECKING([struct ip contains ip_csum]) - AC_TRY_COMPILE([ - #define __BSD_SOURCE - #define _BSD_SOURCE - #include - #include - #include - #include ], - [ - struct ip ip; - ip.ip_csum = 0; - ], - [AC_MSG_RESULT(yes); - AC_DEFINE(HAVE_STRUCT_IP_CSUM)], - [AC_MSG_RESULT(no); - ]) -]) - -dnl -dnl Checks to see if unaligned memory accesses fail -dnl (Pulled from libpcap) -dnl -dnl usage: -dnl -dnl AC_LBL_UNALIGNED_ACCESS -dnl -dnl results: -dnl -dnl LBL_ALIGN (DEFINED) -dnl - -AC_DEFUN(AC_LBL_UNALIGNED_ACCESS, - [AC_MSG_CHECKING(if unaligned accesses fail) - AC_CACHE_VAL(ac_cv_lbl_unaligned_fail, - [case "$target_cpu" in - - alpha|hp*|mips|sparc) - ac_cv_lbl_unaligned_fail=yes - ;; - - *) - cat >conftest.c < -# include -# include - unsigned char a[[5]] = { 1, 2, 3, 4, 5 }; - main() - { - unsigned int i; - pid_t pid; - int status; - /* avoid "core dumped" message */ - pid = fork(); - if (pid < 0) - { - exit(2); - } - if (pid > 0) - { - /* parent */ - pid = waitpid(pid, &status, 0); - if (pid < 0) - { - exit(3); - } - exit(!WIFEXITED(status)); - } - /* child */ - i = *(unsigned int *)&a[[1]]; - printf("%d\n", i); - exit(0); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \ - conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then - dnl failed to compile for some reason - ac_cv_lbl_unaligned_fail=yes - else - ./conftest > conftest.out - if test ! -s conftest.out ; then - ac_cv_lbl_unaligned_fail=yes - else - ac_cv_lbl_unaligned_fail=no - fi - fi - rm -f conftest* core core.conftest - ;; - esac]) - AC_MSG_RESULT($ac_cv_lbl_unaligned_fail) - if test $ac_cv_lbl_unaligned_fail = yes ; then - AC_DEFINE(LBL_ALIGN) - fi -]) - - -dnl -dnl Checks endianess -dnl -dnl usage: -dnl -dnl AC_LIBNET_ENDIAN_CHECK -dnl -dnl results: -dnl -dnl LIBNET_BIG_ENDIAN = 1 or -dnl LIBNET_LIL_ENDIAN = 1 -dnl - -AC_DEFUN(AC_LIBNET_ENDIAN_CHECK, - [AC_MSG_CHECKING(machine endianess) - - cat > conftest.c << EOF -# include -# include - - int main() - { - union - { - short s; - char c[[sizeof(short)]]; - } un; - - un.s = 0x0102; - if (sizeof (short) == 2) - { - if (un.c [[0]] == 1 && un.c [[1]] == 2) - { - printf("B\n"); - } - else - { - if (un.c [[0]] == 2 && un.c [[1]] == 1) - { - printf("L\n"); - } - } - } - else - { - printf("?\n"); - } - return (EXIT_SUCCESS); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then -dnl failed to compile for some reason - ac_cv_libnet_endianess=unknown - else - ./conftest > conftest.out - result=`cat conftest.out` - if test $result = "B"; then - ac_cv_libnet_endianess=big - elif test $result = "L"; then - ac_cv_libnet_endianess=lil - else - ac_cv_libnet_endianess=unknown - fi - fi - rm -f conftest* core core.conftest - - AC_MSG_RESULT($ac_cv_libnet_endianess) - - if test $ac_cv_libnet_endianess = big ; then - AC_DEFINE(LIBNET_BIG_ENDIAN) - ENDIANESS="LIBNET_BIG_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN" - elif test $ac_cv_libnet_endianess = lil ; then - AC_DEFINE(LIBNET_LIL_ENDIAN) - ENDIANESS="LIBNET_LIL_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN" - fi - ]) - -dnl -dnl Improved version of AC_CHECK_LIB -dnl -dnl Thanks to John Hawkinson (jhawk@mit.edu) -dnl -dnl usage: -dnl -dnl AC_LBL_CHECK_LIB(LIBRARY, FUNCTION [, ACTION-IF-FOUND [, -dnl ACTION-IF-NOT-FOUND [, OTHER-LIBRARIES]]]) -dnl -dnl results: -dnl -dnl LIBS -dnl - -define(AC_LBL_CHECK_LIB, -[AC_MSG_CHECKING([for $2 in -l$1]) -dnl Use a cache variable name containing both the library and function name, -dnl because the test really is for library $1 defining function $2, not -dnl just for library $1. Separate tests with the same $1 and different $2's -dnl may have different results. -ac_lib_var=`echo $1['_']$2['_']$5 | sed 'y%./+- %__p__%'` -AC_CACHE_VAL(ac_cv_lbl_lib_$ac_lib_var, -[ac_save_LIBS="$LIBS" -LIBS="-l$1 $5 $LIBS" -AC_TRY_LINK(dnl -ifelse([$2], [main], , dnl Avoid conflicting decl of main. -[/* Override any gcc2 internal prototype to avoid an error. */ -]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus -extern "C" -#endif -])dnl -[/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $2(); -]), - [$2()], - eval "ac_cv_lbl_lib_$ac_lib_var=yes", - eval "ac_cv_lbl_lib_$ac_lib_var=no") -LIBS="$ac_save_LIBS" -])dnl -if eval "test \"`echo '$ac_cv_lbl_lib_'$ac_lib_var`\" = yes"; then - AC_MSG_RESULT(yes) - ifelse([$3], , -[changequote(, )dnl - ac_tr_lib=HAVE_LIB`echo $1 | sed -e 's/[^a-zA-Z0-9_]/_/g' \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'` -changequote([, ])dnl - AC_DEFINE_UNQUOTED($ac_tr_lib) - LIBS="-l$1 $LIBS" -], [$3]) -else - AC_MSG_RESULT(no) -ifelse([$4], , , [$4 -])dnl -fi -]) - -dnl -dnl AC_LBL_LIBRARY_NET -dnl -dnl This test is for network applications that need socket() and -dnl gethostbyname() -ish functions. Under Solaris, those applications -dnl need to link with "-lsocket -lnsl". Under IRIX, they need to link -dnl with "-lnsl" but should *not* link with "-lsocket" because -dnl libsocket.a breaks a number of things (for instance: -dnl gethostbyname() under IRIX 5.2, and snoop sockets under most -dnl versions of IRIX). -dnl -dnl Unfortunately, many application developers are not aware of this, -dnl and mistakenly write tests that cause -lsocket to be used under -dnl IRIX. It is also easy to write tests that cause -lnsl to be used -dnl under operating systems where neither are necessary (or useful), -dnl such as SunOS 4.1.4, which uses -lnsl for TLI. -dnl -dnl This test exists so that every application developer does not test -dnl this in a different, and subtly broken fashion. - -dnl It has been argued that this test should be broken up into two -dnl seperate tests, one for the resolver libraries, and one for the -dnl libraries necessary for using Sockets API. Unfortunately, the two -dnl are carefully intertwined and allowing the autoconf user to use -dnl them independantly potentially results in unfortunate ordering -dnl dependancies -- as such, such component macros would have to -dnl carefully use indirection and be aware if the other components were -dnl executed. Since other autoconf macros do not go to this trouble, -dnl and almost no applications use sockets without the resolver, this -dnl complexity has not been implemented. -dnl -dnl The check for libresolv is in case you are attempting to link -dnl statically and happen to have a libresolv.a lying around (and no -dnl libnsl.a). -dnl -AC_DEFUN(AC_LBL_LIBRARY_NET, [ - # Most operating systems have gethostbyname() in the default searched - # libraries (i.e. libc): - AC_CHECK_FUNC(gethostbyname, , - # Some OSes (eg. Solaris) place it in libnsl: - AC_LBL_CHECK_LIB(nsl, gethostbyname, , - # Some strange OSes (SINIX) have it in libsocket: - AC_LBL_CHECK_LIB(socket, gethostbyname, , - # Unfortunately libsocket sometimes depends on libnsl. - # AC_CHECK_LIB's API is essentially broken so the - # following ugliness is necessary: - AC_LBL_CHECK_LIB(socket, gethostbyname, - LIBS="-lsocket -lnsl $LIBS", - AC_CHECK_LIB(resolv, gethostbyname), - -lnsl)))) - AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket, , - AC_LBL_CHECK_LIB(socket, socket, LIBS="-lsocket -lnsl $LIBS", , - -lnsl))) - # DLPI needs putmsg under HPUX so test for -lstr while we're at it - AC_CHECK_LIB(str, putmsg) - ]) - - -# Do all the work for Automake. -*- Autoconf -*- - -# This macro actually does too much some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 8 - -# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be -# written in clear, in which case automake, when reading aclocal.m4, -# will think it sees a *use*, and therefore will trigger all it's -# C support machinery. Also note that it means that autoscan, seeing -# CC etc. in the Makefile, will ask for an AC_PROG_CC use... - - -AC_PREREQ([2.52]) - -# Autoconf 2.50 wants to disallow AM_ names. We explicitly allow -# the ones we care about. -m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl - -# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) -# AM_INIT_AUTOMAKE([OPTIONS]) -# ----------------------------------------------- -# The call with PACKAGE and VERSION arguments is the old style -# call (pre autoconf-2.50), which is being phased out. PACKAGE -# and VERSION should now be passed to AC_INIT and removed from -# the call to AM_INIT_AUTOMAKE. -# We support both call styles for the transition. After -# the next Automake release, Autoconf can make the AC_INIT -# arguments mandatory, and then we can depend on a new Autoconf -# release and drop the old call support. -AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl - AC_REQUIRE([AC_PROG_INSTALL])dnl -# test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && - test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) -fi - -# Define the identity of the package. -dnl Distinguish between old-style and new-style calls. -m4_ifval([$2], -[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl - AC_SUBST([PACKAGE], [$1])dnl - AC_SUBST([VERSION], [$2])], -[_AM_SET_OPTIONS([$1])dnl - AC_SUBST([PACKAGE], [AC_PACKAGE_TARNAME])dnl - AC_SUBST([VERSION], [AC_PACKAGE_VERSION])])dnl - -_AM_IF_OPTION([no-define],, -[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) - AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl - -# Some tools Automake needs. -AC_REQUIRE([AM_SANITY_CHECK])dnl -AC_REQUIRE([AC_ARG_PROGRAM])dnl -AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) -AM_MISSING_PROG(AUTOCONF, autoconf) -AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) -AM_MISSING_PROG(AUTOHEADER, autoheader) -AM_MISSING_PROG(MAKEINFO, makeinfo) -AM_MISSING_PROG(AMTAR, tar) -AM_PROG_INSTALL_SH -AM_PROG_INSTALL_STRIP -# We need awk for the "check" target. The system "awk" is bad on -# some platforms. -AC_REQUIRE([AC_PROG_AWK])dnl -AC_REQUIRE([AC_PROG_MAKE_SET])dnl - -_AM_IF_OPTION([no-dependencies],, -[AC_PROVIDE_IFELSE([AC_PROG_][CC], - [_AM_DEPENDENCIES(CC)], - [define([AC_PROG_][CC], - defn([AC_PROG_][CC])[_AM_DEPENDENCIES(CC)])])dnl -AC_PROVIDE_IFELSE([AC_PROG_][CXX], - [_AM_DEPENDENCIES(CXX)], - [define([AC_PROG_][CXX], - defn([AC_PROG_][CXX])[_AM_DEPENDENCIES(CXX)])])dnl -]) -]) - -# Copyright 2002 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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 - -# AM_AUTOMAKE_VERSION(VERSION) -# ---------------------------- -# Automake X.Y traces this macro to ensure aclocal.m4 has been -# generated from the m4 files accompanying Automake X.Y. -AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.6"]) - -# AM_SET_CURRENT_AUTOMAKE_VERSION -# ------------------------------- -# Call AM_AUTOMAKE_VERSION so it can be traced. -# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. -AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.6.3])]) - -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright 2001, 2002 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 2 - -# _AM_MANGLE_OPTION(NAME) -# ----------------------- -AC_DEFUN([_AM_MANGLE_OPTION], -[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) - -# _AM_SET_OPTION(NAME) -# ------------------------------ -# Set option NAME. Presently that only means defining a flag for this option. -AC_DEFUN([_AM_SET_OPTION], -[m4_define(_AM_MANGLE_OPTION([$1]), 1)]) - -# _AM_SET_OPTIONS(OPTIONS) -# ---------------------------------- -# OPTIONS is a space-separated list of Automake options. -AC_DEFUN([_AM_SET_OPTIONS], -[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) - -# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) -# ------------------------------------------- -# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. -AC_DEFUN([_AM_IF_OPTION], -[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# -# Check to make sure that the build environment is sane. -# - -# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 3 - -# AM_SANITY_CHECK -# --------------- -AC_DEFUN([AM_SANITY_CHECK], -[AC_MSG_CHECKING([whether build environment is sane]) -# 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". - AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken -alias in your environment]) - fi - - test "$[2]" = conftest.file - ) -then - # Ok. - : -else - AC_MSG_ERROR([newly created file is older than distributed files! -Check your system clock]) -fi -AC_MSG_RESULT(yes)]) - -# -*- Autoconf -*- - - -# Copyright 1997, 1999, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 3 - -# AM_MISSING_PROG(NAME, PROGRAM) -# ------------------------------ -AC_DEFUN([AM_MISSING_PROG], -[AC_REQUIRE([AM_MISSING_HAS_RUN]) -$1=${$1-"${am_missing_run}$2"} -AC_SUBST($1)]) - - -# AM_MISSING_HAS_RUN -# ------------------ -# Define MISSING if not defined so far and test if it supports --run. -# If it does, set am_missing_run to use it, otherwise, to nothing. -AC_DEFUN([AM_MISSING_HAS_RUN], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -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= - AC_MSG_WARN([`missing' script is too old or missing]) -fi -]) - -# AM_AUX_DIR_EXPAND - -# Copyright 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets -# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to -# `$srcdir', `$srcdir/..', or `$srcdir/../..'. -# -# Of course, Automake must honor this variable whenever it calls a -# tool from the auxiliary directory. The problem is that $srcdir (and -# therefore $ac_aux_dir as well) can be either absolute or relative, -# depending on how configure is run. This is pretty annoying, since -# it makes $ac_aux_dir quite unusable in subdirectories: in the top -# source directory, any form will work fine, but in subdirectories a -# relative path needs to be adjusted first. -# -# $ac_aux_dir/missing -# fails when called from a subdirectory if $ac_aux_dir is relative -# $top_srcdir/$ac_aux_dir/missing -# fails if $ac_aux_dir is absolute, -# fails when called from a subdirectory in a VPATH build with -# a relative $ac_aux_dir -# -# The reason of the latter failure is that $top_srcdir and $ac_aux_dir -# are both prefixed by $srcdir. In an in-source build this is usually -# harmless because $srcdir is `.', but things will broke when you -# start a VPATH build or use an absolute $srcdir. -# -# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, -# iff we strip the leading $srcdir from $ac_aux_dir. That would be: -# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` -# and then we would define $MISSING as -# MISSING="\${SHELL} $am_aux_dir/missing" -# This will work as long as MISSING is not called from configure, because -# unfortunately $(top_srcdir) has no meaning in configure. -# However there are other variables, like CC, which are often used in -# configure, and could therefore not use this "fixed" $ac_aux_dir. -# -# Another solution, used here, is to always expand $ac_aux_dir to an -# absolute PATH. The drawback is that using absolute paths prevent a -# configured tree to be moved without reconfiguration. - -# Rely on autoconf to set up CDPATH properly. -AC_PREREQ([2.50]) - -AC_DEFUN([AM_AUX_DIR_EXPAND], [ -# expand $ac_aux_dir to an absolute path -am_aux_dir=`cd $ac_aux_dir && pwd` -]) - -# AM_PROG_INSTALL_SH -# ------------------ -# Define $install_sh. - -# Copyright 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -AC_DEFUN([AM_PROG_INSTALL_SH], -[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -install_sh=${install_sh-"$am_aux_dir/install-sh"} -AC_SUBST(install_sh)]) - -# AM_PROG_INSTALL_STRIP - -# Copyright 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# One issue with vendor `install' (even GNU) is that you can't -# specify the program used to strip binaries. This is especially -# annoying in cross-compiling environments, where the build's strip -# is unlikely to handle the host's binaries. -# Fortunately install-sh will honor a STRIPPROG variable, so we -# always use install-sh in `make install-strip', and initialize -# STRIPPROG with the value of the STRIP variable (set by the user). -AC_DEFUN([AM_PROG_INSTALL_STRIP], -[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl -# 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. -dnl Don't test for $cross_compiling = yes, because it might be `maybe'. -if test "$cross_compiling" != no; then - AC_CHECK_TOOL([STRIP], [strip], :) -fi -INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" -AC_SUBST([INSTALL_STRIP_PROGRAM])]) - -# serial 4 -*- Autoconf -*- - -# Copyright 1999, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - - -# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be -# written in clear, in which case automake, when reading aclocal.m4, -# will think it sees a *use*, and therefore will trigger all it's -# C support machinery. Also note that it means that autoscan, seeing -# CC etc. in the Makefile, will ask for an AC_PROG_CC use... - - - -# _AM_DEPENDENCIES(NAME) -# ---------------------- -# See how the compiler implements dependency checking. -# NAME is "CC", "CXX", "GCJ", or "OBJC". -# We try a few techniques and use that to set a single cache variable. -# -# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was -# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular -# dependency, and given that the user is not expected to run this macro, -# just rely on AC_PROG_CC. -AC_DEFUN([_AM_DEPENDENCIES], -[AC_REQUIRE([AM_SET_DEPDIR])dnl -AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl -AC_REQUIRE([AM_MAKE_INCLUDE])dnl -AC_REQUIRE([AM_DEP_TRACK])dnl - -ifelse([$1], CC, [depcc="$CC" am_compiler_list=], - [$1], CXX, [depcc="$CXX" am_compiler_list=], - [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], - [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], - [depcc="$$1" am_compiler_list=]) - -AC_CACHE_CHECK([dependency style of $depcc], - [am_cv_$1_dependencies_compiler_type], -[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 - - am_cv_$1_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 - # 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. - echo '#include "conftest.h"' > conftest.c - echo 'int i;' > conftest.h - echo "${am__include} ${am__quote}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=conftest.c object=conftest.o \ - depfile=conftest.Po tmpdepfile=conftest.TPo \ - $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 && - grep conftest.h conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - am_cv_$1_dependencies_compiler_type=$depmode - break - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_$1_dependencies_compiler_type=none -fi -]) -AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) -]) - - -# AM_SET_DEPDIR -# ------------- -# Choose a directory name for dependency files. -# This macro is AC_REQUIREd in _AM_DEPENDENCIES -AC_DEFUN([AM_SET_DEPDIR], -[rm -f .deps 2>/dev/null -mkdir .deps 2>/dev/null -if test -d .deps; then - DEPDIR=.deps -else - # MS-DOS does not allow filenames that begin with a dot. - DEPDIR=_deps -fi -rmdir .deps 2>/dev/null -AC_SUBST([DEPDIR]) -]) - - -# AM_DEP_TRACK -# ------------ -AC_DEFUN([AM_DEP_TRACK], -[AC_ARG_ENABLE(dependency-tracking, -[ --disable-dependency-tracking Speeds up one-time builds - --enable-dependency-tracking Do not reject slow dependency extractors]) -if test "x$enable_dependency_tracking" != xno; then - am_depcomp="$ac_aux_dir/depcomp" - AMDEPBACKSLASH='\' -fi -AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH]) -]) - -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -#serial 2 - -# _AM_OUTPUT_DEPENDENCY_COMMANDS -# ------------------------------ -AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[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=`AS_DIRNAME("$mf")` - else - continue - fi - grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` - test -z "$DEPDIR" && continue - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # 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 -e ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //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=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done -done -])# _AM_OUTPUT_DEPENDENCY_COMMANDS - - -# AM_OUTPUT_DEPENDENCY_COMMANDS -# ----------------------------- -# This macro should only be invoked once -- use via AC_REQUIRE. -# -# This code is only required when automatic dependency tracking -# is enabled. FIXME. This creates each `.P' file that we will -# need in order to bootstrap the dependency handling code. -AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], -[AC_CONFIG_COMMANDS([depfiles], - [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) -]) - -# Copyright 2001 Free Software Foundation, Inc. -*- Autoconf -*- - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 2 - -# AM_MAKE_INCLUDE() -# ----------------- -# Check to see how make treats includes. -AC_DEFUN([AM_MAKE_INCLUDE], -[am_make=${MAKE-make} -cat > confinc << 'END' -doit: - @echo done -END -# If we don't find an include directive, just comment out the code. -AC_MSG_CHECKING([for style of include used by $am_make]) -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 | fgrep -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 -AC_SUBST(am__include) -AC_SUBST(am__quote) -AC_MSG_RESULT($_am_result) -rm -f confinc confmf -]) - -# AM_CONDITIONAL -*- Autoconf -*- - -# Copyright 1997, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 5 - -AC_PREREQ(2.52) - -# AM_CONDITIONAL(NAME, SHELL-CONDITION) -# ------------------------------------- -# Define a conditional. -AC_DEFUN([AM_CONDITIONAL], -[ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], - [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE]) -AC_SUBST([$1_FALSE]) -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi -AC_CONFIG_COMMANDS_PRE( -[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then - AC_MSG_ERROR([conditional \"$1\" was never defined. -Usually this means the macro was only invoked conditionally.]) -fi])]) - -# Like AC_CONFIG_HEADER, but automatically create stamp file. -*- Autoconf -*- - -# Copyright 1996, 1997, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -AC_PREREQ([2.52]) - -# serial 6 - -# When config.status generates a header, we must update the stamp-h file. -# This file resides in the same directory as the config header -# that is generated. We must strip everything past the first ":", -# and everything past the last "/". - -# _AM_DIRNAME(PATH) -# ----------------- -# Like AS_DIRNAME, only do it during macro expansion -AC_DEFUN([_AM_DIRNAME], - [m4_if(regexp([$1], [^.*[^/]//*[^/][^/]*/*$]), -1, - m4_if(regexp([$1], [^//\([^/]\|$\)]), -1, - m4_if(regexp([$1], [^/.*]), -1, - [.], - patsubst([$1], [^\(/\).*], [\1])), - patsubst([$1], [^\(//\)\([^/].*\|$\)], [\1])), - patsubst([$1], [^\(.*[^/]\)//*[^/][^/]*/*$], [\1]))[]dnl -])# _AM_DIRNAME - - -# The stamp files are numbered to have different names. -# We could number them on a directory basis, but that's additional -# complications, let's have a unique counter. -m4_define([_AM_STAMP_Count], [0]) - - -# _AM_STAMP(HEADER) -# ----------------- -# The name of the stamp file for HEADER. -AC_DEFUN([_AM_STAMP], -[m4_define([_AM_STAMP_Count], m4_incr(_AM_STAMP_Count))dnl -AS_ESCAPE(_AM_DIRNAME(patsubst([$1], - [:.*])))/stamp-h[]_AM_STAMP_Count]) - - -# _AM_CONFIG_HEADER(HEADER[:SOURCES], COMMANDS, INIT-COMMANDS) -# ------------------------------------------------------------ -# We used to try to get a real timestamp in stamp-h. But the fear is that -# that will cause unnecessary cvs conflicts. -AC_DEFUN([_AM_CONFIG_HEADER], -[# Add the stamp file to the list of files AC keeps track of, -# along with our hook. -AC_CONFIG_HEADERS([$1], - [# update the timestamp -echo 'timestamp for $1' >"_AM_STAMP([$1])" -$2], - [$3]) -])# _AM_CONFIG_HEADER - - -# AM_CONFIG_HEADER(HEADER[:SOURCES]..., COMMANDS, INIT-COMMANDS) -# -------------------------------------------------------------- -AC_DEFUN([AM_CONFIG_HEADER], -[AC_FOREACH([_AM_File], [$1], [_AM_CONFIG_HEADER(_AM_File, [$2], [$3])]) -])# AM_CONFIG_HEADER - -# Add --enable-maintainer-mode option to configure. -# From Jim Meyering - -# Copyright 1996, 1998, 2000, 2001 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# 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. - -# serial 1 - -AC_DEFUN([AM_MAINTAINER_MODE], -[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) - dnl maintainer-mode is disabled by default - AC_ARG_ENABLE(maintainer-mode, -[ --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer], - USE_MAINTAINER_MODE=$enableval, - USE_MAINTAINER_MODE=no) - AC_MSG_RESULT([$USE_MAINTAINER_MODE]) - AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes]) - MAINT=$MAINTAINER_MODE_TRUE - AC_SUBST(MAINT)dnl -] -) - diff --git a/libnet/autom4te.cache/output.0 b/libnet/autom4te.cache/output.0 deleted file mode 100644 index 095481d..0000000 --- a/libnet/autom4te.cache/output.0 +++ /dev/null @@ -1,6225 +0,0 @@ -@%:@! /bin/sh -@%:@ Guess values for system-dependent variables and create Makefiles. -@%:@ Generated by GNU Autoconf 2.57. -@%:@ -@%:@ Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -@%:@ 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 - -# Support unset when possible. -if (FOO=FOO; unset FOO) >/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 -n "`(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 - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="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="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= - -ac_unique_file="src/libnet_build_ip.c" -# 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_default_prefix=/usr -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 PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE RANLIB ac_ct_RANLIB CPP EGREP ENDIANESS LIBNET_VERSION HAVE_PACKET_SOCKET ADDITIONAL_LIBS LIBNET_CONFIG_DEFINES LIBNET_CONFIG_LIBS LIBNET_CONFIG_CFLAGS LIB@&t@OBJS 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] - --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --disable-dependency-tracking Speeds up one-time builds - --enable-dependency-tracking Do not reject slow dependency extractors - -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 -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` - - 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 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -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.57. 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.* *.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 - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# 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 - - - - - - - - - - - - - - - - - - - -LIBNET_VERSION=`cat VERSION` -echo "$as_me:$LINENO: result: beginning autoconfiguration process for libnet-$LIBNET_VERSION..." >&5 -echo "${ECHO_T}beginning autoconfiguration process for libnet-$LIBNET_VERSION..." >&6 -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.6" -# 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" -# ./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/* | \ - /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 - -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 - - # 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 - -# Define the identity of the package. - PACKAGE=libnet - VERSION=$LIBNET_VERSION - - -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"} - - -AMTAR=${AMTAR-"${am_missing_run}tar"} - -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. - - - -# Add the stamp file to the list of files AC keeps track of, -# along with our hook. - ac_config_headers="$ac_config_headers include/config.h" - - - -echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5 -echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6 - # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then - enableval="$enable_maintainer_mode" - USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi; - echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5 -echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6 - - -if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - - MAINT=$MAINTAINER_MODE_TRUE - - - -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 -#line $LINENO "configure" -/* 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" >&5 -echo $ECHO_N "checking for C compiler default output... $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 -#line $LINENO "configure" -/* 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 -#line $LINENO "configure" -/* 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>&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.$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 -#line $LINENO "configure" -/* 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>&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.$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 -#line $LINENO "configure" -/* 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; -} -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>&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.$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>&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 \ - ''\ - '#include ' \ - '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 -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -@%:@include -$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>&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.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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.$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 -rm -f .deps 2>/dev/null -mkdir .deps 2>/dev/null -if test -d .deps; then - DEPDIR=.deps -else - # MS-DOS does not allow filenames that begin with a dot. - DEPDIR=_deps -fi -rmdir .deps 2>/dev/null - - - ac_config_commands="$ac_config_commands depfiles" - - -am_make=${MAKE-make} -cat > confinc << 'END' -doit: - @echo done -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 | fgrep -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 - - 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 - # 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. - echo '#include "conftest.h"' > conftest.c - echo 'int i;' > conftest.h - echo "${am__include} ${am__quote}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=conftest.c object=conftest.o \ - depfile=conftest.Po tmpdepfile=conftest.TPo \ - $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 && - grep conftest.h conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - am_cv_CC_dependencies_compiler_type=$depmode - break - 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 - - -# 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" -# ./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/* | \ - /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 - - - -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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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>&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.$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 -#line $LINENO "configure" -/* 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 -#line $LINENO "configure" -/* 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 -#line $LINENO "configure" -/* 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.* *.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 -#line $LINENO "configure" -/* 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>&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.$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 - - - -for ac_header in sys/sockio.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -@%:@include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -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 - - - -echo "$as_me:$LINENO: checking machine endianess" >&5 -echo $ECHO_N "checking machine endianess... $ECHO_C" >&6 - - cat > conftest.c << EOF -# include -# include - - int main() - { - union - { - short s; - char c[sizeof(short)]; - } un; - - un.s = 0x0102; - if (sizeof (short) == 2) - { - if (un.c [0] == 1 && un.c [1] == 2) - { - printf("B\n"); - } - else - { - if (un.c [0] == 2 && un.c [1] == 1) - { - printf("L\n"); - } - } - } - else - { - printf("?\n"); - } - return (EXIT_SUCCESS); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then - ac_cv_libnet_endianess=unknown - else - ./conftest > conftest.out - result=`cat conftest.out` - if test $result = "B"; then - ac_cv_libnet_endianess=big - elif test $result = "L"; then - ac_cv_libnet_endianess=lil - else - ac_cv_libnet_endianess=unknown - fi - fi - rm -f conftest* core core.conftest - - echo "$as_me:$LINENO: result: $ac_cv_libnet_endianess" >&5 -echo "${ECHO_T}$ac_cv_libnet_endianess" >&6 - - if test $ac_cv_libnet_endianess = big ; then - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BIG_ENDIAN 1 -_ACEOF - - ENDIANESS="LIBNET_BIG_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN" - elif test $ac_cv_libnet_endianess = lil ; then - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_LIL_ENDIAN 1 -_ACEOF - - ENDIANESS="LIBNET_LIL_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN" - fi - -echo "$as_me:$LINENO: checking if unaligned accesses fail" >&5 -echo $ECHO_N "checking if unaligned accesses fail... $ECHO_C" >&6 - if test "${ac_cv_lbl_unaligned_fail+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case "$target_cpu" in - - alpha|hp*|mips|sparc) - ac_cv_lbl_unaligned_fail=yes - ;; - - *) - cat >conftest.c < -# include -# include - unsigned char a[5] = { 1, 2, 3, 4, 5 }; - main() - { - unsigned int i; - pid_t pid; - int status; - /* avoid "core dumped" message */ - pid = fork(); - if (pid < 0) - { - exit(2); - } - if (pid > 0) - { - /* parent */ - pid = waitpid(pid, &status, 0); - if (pid < 0) - { - exit(3); - } - exit(!WIFEXITED(status)); - } - /* child */ - i = *(unsigned int *)&a[1]; - printf("%d\n", i); - exit(0); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \ - conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then - ac_cv_lbl_unaligned_fail=yes - else - ./conftest > conftest.out - if test ! -s conftest.out ; then - ac_cv_lbl_unaligned_fail=yes - else - ac_cv_lbl_unaligned_fail=no - fi - fi - rm -f conftest* core core.conftest - ;; - esac -fi - - echo "$as_me:$LINENO: result: $ac_cv_lbl_unaligned_fail" >&5 -echo "${ECHO_T}$ac_cv_lbl_unaligned_fail" >&6 - if test $ac_cv_lbl_unaligned_fail = yes ; then - cat >>confdefs.h <<\_ACEOF -@%:@define LBL_ALIGN 1 -_ACEOF - - fi - - - - - - - - - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - -if test "$GCC" = yes ; then - CFLAGS="$CFLAGS -Wall" -fi - - - - -for ac_func in strerror -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ -#ifdef __STDC__ -# include -#else -# include -#endif -/* 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 $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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 - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -@%:@define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - -echo "$as_me:$LINENO: checking link-layer packet interface type" >&5 -echo $ECHO_N "checking link-layer packet interface type... $ECHO_C" >&6 - -if test -r /dev/bpf0 ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_bpf.$ac_objext" - echo "$as_me:$LINENO: result: found bpf" >&5 -echo "${ECHO_T}found bpf" >&6 -elif test -r /usr/include/net/pfilt.h ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_pf.$ac_objext" - echo "$as_me:$LINENO: result: found pf" >&5 -echo "${ECHO_T}found pf" >&6 -elif test -r /dev/nit ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_snit.$ac_objext" - echo "$as_me:$LINENO: result: found snit" >&5 -echo "${ECHO_T}found snit" >&6 -elif test -r /usr/include/sys/net/nit.h ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_nit.$ac_objext" - echo "$as_me:$LINENO: result: found nit" >&5 -echo "${ECHO_T}found nit" >&6 -elif test -r /usr/include/net/raw.h ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_snoop.$ac_objext" - echo "$as_me:$LINENO: result: found snoop" >&5 -echo "${ECHO_T}found snoop" >&6 -elif test -r /usr/include/sys/dlpi.h ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_dlpi.$ac_objext" - echo "$as_me:$LINENO: result: found dlpi" >&5 -echo "${ECHO_T}found dlpi" >&6 - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_DLPI 1 -_ACEOF - -elif test -r /usr/include/linux/socket.h ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_linux.$ac_objext" - echo "$as_me:$LINENO: result: found linux primitives" >&5 -echo "${ECHO_T}found linux primitives" >&6 - - echo "$as_me:$LINENO: checking for packet socket (PF_SOCKET)" >&5 -echo $ECHO_N "checking for packet socket (PF_SOCKET)... $ECHO_C" >&6 - if test "${ac_libnet_have_packet_socket+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case "$target_os" in - - linux) - ac_libnet_have_packet_socket = no - ;; - *) - - cat > pf_packet-test.c << EOF -#include -#include -#include -#include -#include -#include /* for the glibc version number */ -#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 -#include -#include /* the L2 protocols */ -#else -#include -#include -#include /* The L2 protocols */ -#endif - -#ifndef SOL_PACKET -#define SOL_PACKET 263 -#endif /* SOL_PACKET */ - -int -main(int argc, char **argv) -{ - int fd; - - fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); - if (fd == -1) - { - if (errno == EPERM) - { - /* user's UID != 0 */ - printf("probably"); - exit (EXIT_FAILURE); - } - printf("no"); - exit (EXIT_FAILURE); - } - printf("yes"); - exit (EXIT_SUCCESS); -} -EOF - ${CC-cc} -o pf_packet-test $CFLAGS pf_packet-test.c >/dev/null 2>&1 - - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x ./pf_packet-test ; then - ac_libnet_have_packet_socket=choked - else - ac_libnet_have_packet_socket=`./pf_packet-test`; - fi - if test $ac_libnet_have_packet_socket = choked; then - echo "$as_me:$LINENO: result: test program compile choked... assuming no" >&5 -echo "${ECHO_T}test program compile choked... assuming no" >&6 - elif test $ac_libnet_have_packet_socket = yes; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - elif test $ac_libnet_have_packet_socket = probably; then - echo "$as_me:$LINENO: result: test program got EPERM... assuming yes" >&5 -echo "${ECHO_T}test program got EPERM... assuming yes" >&6 - elif test $ac_libnet_have_packet_socket = no; then - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - fi - - rm -f pf_packet-test* core core.pf_packet-test - ;; - esac -fi - - - if test $ac_libnet_have_packet_socket = yes -o $ac_libnet_have_packet_socket = probably; then - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_PACKET_SOCKET 1 -_ACEOF - - fi - - echo "$as_me:$LINENO: checking for Linux proc filesystem" >&5 -echo $ECHO_N "checking for Linux proc filesystem... $ECHO_C" >&6 - if test "${ac_cv_libnet_linux_procfs+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" ; then - ac_cv_libnet_linux_procfs=yes - else - ac_cv_libnet_linux_procfs=no - fi -fi - - echo "$as_me:$LINENO: result: $ac_cv_libnet_linux_procfs" >&5 -echo "${ECHO_T}$ac_cv_libnet_linux_procfs" >&6 - if test $ac_cv_libnet_linux_procfs = yes ; then - -cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_LINUX_PROCFS 1 -_ACEOF - - fi -elif test -c /dev/bpf0 ; then # check again in case not readable - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_bpf.$ac_objext" - echo "$as_me:$LINENO: result: found bpf" >&5 -echo "${ECHO_T}found bpf" >&6 -elif test -c /dev/nit ; then # check again in case not readable - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_snit.$ac_objext" - echo "$as_me:$LINENO: result: found snit" >&5 -echo "${ECHO_T}found snit" >&6 -elif test "$target_os" = "cygwin" ; then - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_win32.$ac_objext" - echo "$as_me:$LINENO: result: found win32 wpcap" >&5 -echo "${ECHO_T}found win32 wpcap" >&6 -else - LIB@&t@OBJS="$LIB@&t@OBJS libnet_link_none.$ac_objext" - { echo "$as_me:$LINENO: WARNING: could not find a link-layer packet interface" >&5 -echo "$as_me: WARNING: could not find a link-layer packet interface" >&2;} - { echo "$as_me:$LINENO: WARNING: link-layer packet injection will not be available" >&5 -echo "$as_me: WARNING: link-layer packet injection will not be available" >&2;} -fi - -echo -n "scanning available packet construction modules: " -for dir in src/*build*c ; do - echo $dir | sed -e /src\\/libnet_build_/s/// | sed -e /\\.c/s/// | tr \\n \\040 -done -echo "" - - -case "$target_os" in - -*linux*) - cat >>confdefs.h <<\_ACEOF -@%:@define _BSD_SOURCE 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define __BSD_SOURCE 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define __FAVOR_BSD 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD" - -for ac_header in net/ethernet.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -@%:@include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -@%:@define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - \ - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DHAVE_NET_ETHERNET_H" -fi - -done - - ;; - -*freebsd*) - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSD_BYTE_SWAP 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_SOCKADDR_SA_LEN 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP -DHAVE_SOCKADDR_SA_LEN" - ;; - -*netbsd*) - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSD_BYTE_SWAP 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP" - ;; - -*openbsd*) - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_SOCKADDR_SA_LEN 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS" - ;; - -*bsdi*) - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSD_BYTE_SWAP 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP" - ;; - -*darwin*) - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_SOCKADDR_SA_LEN 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DHAVE_SOCKADDR_SA_LEN" - ;; - -*solaris*) - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_SOLARIS 1 -_ACEOF - - - -for ac_header in sys/bufmod.h sys/dlpi_ext.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -@%:@include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -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 - - echo "$as_me:$LINENO: checking for /dev/dlpi device" >&5 -echo $ECHO_N "checking for /dev/dlpi device... $ECHO_C" >&6 - if test -c /dev/dlpi; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_DEV_DLPI 1 -_ACEOF - - else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - dir="/dev/dlpi" - echo "$as_me:$LINENO: checking for $dir directory" >&5 -echo $ECHO_N "checking for $dir directory... $ECHO_C" >&6 - if test -d $dir ; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - cat >>confdefs.h <<_ACEOF -@%:@define DLPI_DEV_PREFIX "$dir" -_ACEOF - - else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - fi - fi - -echo "$as_me:$LINENO: checking for socket in -lsocket" >&5 -echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6 -if test "${ac_cv_lib_socket_socket+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 socket (); -int -main () -{ -socket (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_socket_socket=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_socket_socket=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5 -echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6 -if test $ac_cv_lib_socket_socket = yes; then - cat >>confdefs.h <<_ACEOF -@%:@define HAVE_LIBSOCKET 1 -_ACEOF - - LIBS="-lsocket $LIBS" - -else - { { echo "$as_me:$LINENO: error: libsocket not found." >&5 -echo "$as_me: error: libsocket not found." >&2;} - { (exit 1); exit 1; }; } -fi - - -echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5 -echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 -if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 gethostbyname (); -int -main () -{ -gethostbyname (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_nsl_gethostbyname=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_nsl_gethostbyname=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5 -echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 -if test $ac_cv_lib_nsl_gethostbyname = yes; then - cat >>confdefs.h <<_ACEOF -@%:@define HAVE_LIBNSL 1 -_ACEOF - - LIBS="-lnsl $LIBS" - -else - { { echo "$as_me:$LINENO: error: libnsl not found." >&5 -echo "$as_me: error: libnsl not found." >&2;} - { (exit 1); exit 1; }; } -fi - - - case "`uname -r`" in - 5.4) - cat >>confdefs.h <<\_ACEOF -@%:@define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - ;; - 5.5*) - cat >>confdefs.h <<\_ACEOF -@%:@define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - ;; - 5.8) - cat >>confdefs.h <<\_ACEOF -@%:@define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_SOLARIS_IPV6 1 -_ACEOF - - ;; - 5.9) - cat >>confdefs.h <<\_ACEOF -@%:@define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_SOLARIS_IPV6 1 -_ACEOF - - ;; - - esac - - ADDITIONAL_LIBS='-lsocket -lnsl' - LIBNET_CONFIG_LIBS="$LIBNET_CONFIG_LIBS -lsocket -lnsl" - ;; - -*hpux11*) - cat >>confdefs.h <<\_ACEOF -@%:@define HAVE_HPUX11 1 -_ACEOF - - -for ac_header in sys/dlpi_ext.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -@%:@include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -@%:@@%:@ ------------------------------------ @%:@@%:@ -@%:@@%:@ Report this to bug-autoconf@gnu.org. @%:@@%:@ -@%:@@%:@ ------------------------------------ @%:@@%:@ -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -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 - - ;; - -*cygwin*) - cat >>confdefs.h <<\_ACEOF -@%:@define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -@%:@define NO_SNPRINTF 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DNO_SNPRINTF" - CFLAGS="$CFLAGS -mno-cygwin -O0 -fnative-struct -DNO_SNPRINTF -I/usr/include/pcap" - -echo "$as_me:$LINENO: checking for PacketSetMode in -lpacket" >&5 -echo $ECHO_N "checking for PacketSetMode in -lpacket... $ECHO_C" >&6 -if test "${ac_cv_lib_packet_PacketSetMode+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpacket $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 PacketSetMode (); -int -main () -{ -PacketSetMode (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_packet_PacketSetMode=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_packet_PacketSetMode=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_packet_PacketSetMode" >&5 -echo "${ECHO_T}$ac_cv_lib_packet_PacketSetMode" >&6 -if test $ac_cv_lib_packet_PacketSetMode = yes; then - cat >>confdefs.h <<_ACEOF -@%:@define HAVE_LIBPACKET 1 -_ACEOF - - LIBS="-lpacket $LIBS" - -else - { { echo "$as_me:$LINENO: error: packet lib not found." >&5 -echo "$as_me: error: packet lib not found." >&2;} - { (exit 1); exit 1; }; } -fi - - -echo "$as_me:$LINENO: checking for pcap_setmode in -lwpcap" >&5 -echo $ECHO_N "checking for pcap_setmode in -lwpcap... $ECHO_C" >&6 -if test "${ac_cv_lib_wpcap_pcap_setmode+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lwpcap $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 pcap_setmode (); -int -main () -{ -pcap_setmode (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_wpcap_pcap_setmode=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_wpcap_pcap_setmode=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_wpcap_pcap_setmode" >&5 -echo "${ECHO_T}$ac_cv_lib_wpcap_pcap_setmode" >&6 -if test $ac_cv_lib_wpcap_pcap_setmode = yes; then - cat >>confdefs.h <<_ACEOF -@%:@define HAVE_LIBWPCAP 1 -_ACEOF - - LIBS="-lwpcap $LIBS" - -else - { { echo "$as_me:$LINENO: error: pcap lib not found." >&5 -echo "$as_me: error: pcap lib not found." >&2;} - { (exit 1); exit 1; }; } -fi - - LIBS="$LIBS -lws2_32" - ;; - -*) - { echo "$as_me:$LINENO: WARNING: apparently your OS is not officially supported yet" >&5 -echo "$as_me: WARNING: apparently your OS is not officially supported yet" >&2;} - { echo "$as_me:$LINENO: WARNING: this may not work" >&5 -echo "$as_me: WARNING: this may not work" >&2;} - echo "$as_me:$LINENO: result: please send diffs to mike@infonexus.com" >&5 -echo "${ECHO_T}please send diffs to mike@infonexus.com" >&6 - ;; - -esac - - ac_config_files="$ac_config_files Makefile src/Makefile include/Makefile include/libnet/Makefile sample/Makefile version.h include/libnet.h libnet-config" - ac_config_commands="$ac_config_commands default" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -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 : $LIB@&t@OBJS; 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 -LIB@&t@OBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - -if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } -fi -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 - -: ${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 - -# Support unset when possible. -if (FOO=FOO; unset FOO) >/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 -n "`(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 - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="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="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.57. 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.57, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 -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" ;; - "include/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/libnet/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/libnet/Makefile" ;; - "sample/Makefile" ) CONFIG_FILES="$CONFIG_FILES sample/Makefile" ;; - "version.h" ) CONFIG_FILES="$CONFIG_FILES version.h" ;; - "include/libnet.h" ) CONFIG_FILES="$CONFIG_FILES include/libnet.h" ;; - "libnet-config" ) CONFIG_FILES="$CONFIG_FILES libnet-config" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; - "include/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/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,@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,@AMTAR@,$AMTAR,;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,@AWK@,$AWK,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t -s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t -s,@MAINT@,$MAINT,;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,@RANLIB@,$RANLIB,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@ENDIANESS@,$ENDIANESS,;t t -s,@LIBNET_VERSION@,$LIBNET_VERSION,;t t -s,@HAVE_PACKET_SOCKET@,$HAVE_PACKET_SOCKET,;t t -s,@ADDITIONAL_LIBS@,$ADDITIONAL_LIBS,;t t -s,@LIBNET_CONFIG_DEFINES@,$LIBNET_CONFIG_DEFINES,;t t -s,@LIBNET_CONFIG_LIBS@,$LIBNET_CONFIG_LIBS,;t t -s,@LIBNET_CONFIG_CFLAGS@,$LIBNET_CONFIG_CFLAGS,;t t -s,@LIB@&t@OBJS@,$LIB@&t@OBJS,;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 -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - 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 - # 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; } -_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; }; } - 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 - # Run the commands associated with the file. - case $ac_file in - include/config.h ) # update the timestamp -echo 'timestamp for include/config.h' >"include/stamp-h1" - ;; - esac -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'` - 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 -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` - - - { 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 - grep '^DEP_FILES *= *[^ @%:@]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` - test -z "$DEPDIR" && continue - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # 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 -e ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //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 - ;; - default ) chmod +x libnet-config ;; - 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/libnet/autom4te.cache/requests b/libnet/autom4te.cache/requests deleted file mode 100644 index 20e445e..0000000 --- a/libnet/autom4te.cache/requests +++ /dev/null @@ -1,111 +0,0 @@ -# This file was created by autom4te. -# It contains the lists of macros which have been traced. -# It can be safely removed. - -@request = ( - bless( [ - '0', - 1, - [ - '/usr/share/autoconf' - ], - [ - '/usr/share/autoconf/autoconf/autoconf.m4f', - 'aclocal.m4', - 'configure.in' - ], - { - 'AC_CONFIG_SUBDIRS' => 1, - 'AM_PROG_CC_C_O' => 1, - 'AC_CHECK_TYPES' => 1, - 'AC_FUNC_MMAP' => 1, - 'AC_FUNC_FORK' => 1, - 'AM_AUTOMAKE_VERSION' => 1, - 'AC_FUNC_MBRTOWC' => 1, - 'AC_FUNC_REALLOC' => 1, - 'AC_FUNC_STRTOD' => 1, - 'AC_PROG_CXX' => 1, - 'AC_PROG_CPP' => 1, - 'AC_CHECK_LIB' => 1, - 'AC_TYPE_MODE_T' => 1, - 'AC_FUNC_STRCOLL' => 1, - 'include' => 1, - 'AC_PROG_MAKE_SET' => 1, - 'AC_FUNC_CLOSEDIR_VOID' => 1, - 'AC_TYPE_SIGNAL' => 1, - 'AC_HEADER_MAJOR' => 1, - 'AC_FUNC_FSEEKO' => 1, - 'AC_FUNC_LSTAT' => 1, - 'AC_DECL_SYS_SIGLIST' => 1, - 'AC_PROG_YACC' => 1, - 'm4_include' => 1, - 'AH_OUTPUT' => 1, - 'AC_PROG_GCC_TRADITIONAL' => 1, - 'AC_PROG_RANLIB' => 1, - 'AC_C_INLINE' => 1, - 'AC_REPLACE_FNMATCH' => 1, - 'm4_pattern_forbid' => 1, - 'AC_FUNC_OBSTACK' => 1, - 'AC_CANONICAL_HOST' => 1, - 'AC_FUNC_MALLOC' => 1, - 'AC_HEADER_TIME' => 1, - 'AC_FUNC_GETPGRP' => 1, - 'AC_FUNC_STRNLEN' => 1, - 'm4_pattern_allow' => 1, - 'AC_FUNC_CHOWN' => 1, - 'AC_TYPE_UID_T' => 1, - 'AC_FUNC_VPRINTF' => 1, - 'AC_FUNC_MKTIME' => 1, - 'AM_CONDITIONAL' => 1, - 'AC_FUNC_ALLOCA' => 1, - 'AC_CONFIG_AUX_DIR' => 1, - 'AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK' => 1, - 'AC_FUNC_STAT' => 1, - 'AM_GNU_GETTEXT' => 1, - 'AC_FUNC_GETGROUPS' => 1, - 'AC_PROG_LIBTOOL' => 1, - 'AC_FUNC_SELECT_ARGTYPES' => 1, - 'AC_CONFIG_HEADERS' => 1, - 'AC_STRUCT_TIMEZONE' => 1, - 'AC_FUNC_STRFTIME' => 1, - 'AC_HEADER_SYS_WAIT' => 1, - 'AC_FUNC_SETVBUF_REVERSED' => 1, - 'AC_SUBST' => 1, - 'AC_CHECK_HEADERS' => 1, - 'AC_PROG_LN_S' => 1, - 'AC_PROG_INSTALL' => 1, - 'AM_MAINTAINER_MODE' => 1, - 'AM_INIT_AUTOMAKE' => 1, - 'AC_CHECK_FUNCS' => 1, - 'AC_FUNC_GETLOADAVG' => 1, - 'AC_HEADER_STDC' => 1, - 'AC_HEADER_STAT' => 1, - 'AC_TYPE_SIZE_T' => 1, - 'AC_CONFIG_FILES' => 1, - 'AC_C_CONST' => 1, - 'AC_STRUCT_ST_BLOCKS' => 1, - 'AC_DEFINE_TRACE_LITERAL' => 1, - 'AC_FUNC_WAIT3' => 1, - 'AC_FUNC_UTIME_NULL' => 1, - 'AC_PROG_LEX' => 1, - 'AC_STRUCT_TM' => 1, - 'AC_CHECK_MEMBERS' => 1, - 'AC_FUNC_ERROR_AT_LINE' => 1, - 'AC_PROG_AWK' => 1, - 'AC_PROG_CC' => 1, - 'AC_TYPE_OFF_T' => 1, - 'AC_HEADER_DIRENT' => 1, - 'AC_FUNC_GETMNTENT' => 1, - 'AC_PATH_X' => 1, - 'AC_TYPE_PID_T' => 1, - 'AC_LIBSOURCE' => 1, - 'AC_FUNC_SETPGRP' => 1, - 'AC_FUNC_MEMCMP' => 1, - 'AC_CANONICAL_SYSTEM' => 1, - 'AC_C_VOLATILE' => 1, - 'AC_FUNC_STRERROR_R' => 1, - 'AC_INIT' => 1 - } - ], 'Request' ) - ); - diff --git a/libnet/autom4te.cache/traces.0 b/libnet/autom4te.cache/traces.0 deleted file mode 100644 index 355b55c..0000000 --- a/libnet/autom4te.cache/traces.0 +++ /dev/null @@ -1,272 +0,0 @@ -m4trace:aclocal.m4:514: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$]) -m4trace:configure.in:10: -1- AC_INIT([src/libnet_build_ip.c]) -m4trace:configure.in:10: -1- m4_pattern_forbid([^_?A[CHUM]_]) -m4trace:configure.in:10: -1- m4_pattern_forbid([_AC_]) -m4trace:configure.in:10: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS']) -m4trace:configure.in:10: -1- m4_pattern_allow([^AS_FLAGS$]) -m4trace:configure.in:10: -1- m4_pattern_forbid([^_?m4_]) -m4trace:configure.in:10: -1- m4_pattern_forbid([^dnl$]) -m4trace:configure.in:10: -1- m4_pattern_forbid([^_?AS_]) -m4trace:configure.in:10: -1- AC_SUBST([SHELL], [${CONFIG_SHELL-/bin/sh}]) -m4trace:configure.in:10: -1- AC_SUBST([PATH_SEPARATOR]) -m4trace:configure.in:10: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])]) -m4trace:configure.in:10: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])]) -m4trace:configure.in:10: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])]) -m4trace:configure.in:10: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])]) -m4trace:configure.in:10: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])]) -m4trace:configure.in:10: -1- AC_SUBST([exec_prefix], [NONE]) -m4trace:configure.in:10: -1- AC_SUBST([prefix], [NONE]) -m4trace:configure.in:10: -1- AC_SUBST([program_transform_name], [s,x,x,]) -m4trace:configure.in:10: -1- AC_SUBST([bindir], ['${exec_prefix}/bin']) -m4trace:configure.in:10: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin']) -m4trace:configure.in:10: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec']) -m4trace:configure.in:10: -1- AC_SUBST([datadir], ['${prefix}/share']) -m4trace:configure.in:10: -1- AC_SUBST([sysconfdir], ['${prefix}/etc']) -m4trace:configure.in:10: -1- AC_SUBST([sharedstatedir], ['${prefix}/com']) -m4trace:configure.in:10: -1- AC_SUBST([localstatedir], ['${prefix}/var']) -m4trace:configure.in:10: -1- AC_SUBST([libdir], ['${exec_prefix}/lib']) -m4trace:configure.in:10: -1- AC_SUBST([includedir], ['${prefix}/include']) -m4trace:configure.in:10: -1- AC_SUBST([oldincludedir], ['/usr/include']) -m4trace:configure.in:10: -1- AC_SUBST([infodir], ['${prefix}/info']) -m4trace:configure.in:10: -1- AC_SUBST([mandir], ['${prefix}/man']) -m4trace:configure.in:10: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME]) -m4trace:configure.in:10: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */ -#undef PACKAGE_NAME]) -m4trace:configure.in:10: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME]) -m4trace:configure.in:10: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME]) -m4trace:configure.in:10: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION]) -m4trace:configure.in:10: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */ -#undef PACKAGE_VERSION]) -m4trace:configure.in:10: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING]) -m4trace:configure.in:10: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING]) -m4trace:configure.in:10: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT]) -m4trace:configure.in:10: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT]) -m4trace:configure.in:10: -1- AC_SUBST([build_alias]) -m4trace:configure.in:10: -1- AC_SUBST([host_alias]) -m4trace:configure.in:10: -1- AC_SUBST([target_alias]) -m4trace:configure.in:10: -1- AC_SUBST([DEFS]) -m4trace:configure.in:10: -1- AC_SUBST([ECHO_C]) -m4trace:configure.in:10: -1- AC_SUBST([ECHO_N]) -m4trace:configure.in:10: -1- AC_SUBST([ECHO_T]) -m4trace:configure.in:10: -1- AC_SUBST([LIBS]) -m4trace:configure.in:13: -1- AC_CANONICAL_SYSTEM -m4trace:configure.in:13: -1- AC_CANONICAL_HOST -m4trace:configure.in:13: -1- AC_SUBST([build], [$ac_cv_build]) -m4trace:configure.in:13: -1- AC_SUBST([build_cpu], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`]) -m4trace:configure.in:13: -1- AC_SUBST([build_vendor], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`]) -m4trace:configure.in:13: -1- AC_SUBST([build_os], [`echo $ac_cv_build | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`]) -m4trace:configure.in:13: -1- AC_SUBST([host], [$ac_cv_host]) -m4trace:configure.in:13: -1- AC_SUBST([host_cpu], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`]) -m4trace:configure.in:13: -1- AC_SUBST([host_vendor], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`]) -m4trace:configure.in:13: -1- AC_SUBST([host_os], [`echo $ac_cv_host | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`]) -m4trace:configure.in:13: -1- AC_SUBST([target], [$ac_cv_target]) -m4trace:configure.in:13: -1- AC_SUBST([target_cpu], [`echo $ac_cv_target | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\1/'`]) -m4trace:configure.in:13: -1- AC_SUBST([target_vendor], [`echo $ac_cv_target | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\2/'`]) -m4trace:configure.in:13: -1- AC_SUBST([target_os], [`echo $ac_cv_target | sed 's/^\([[^-]]*\)-\([[^-]]*\)-\(.*\)$/\3/'`]) -m4trace:configure.in:15: -1- AM_INIT_AUTOMAKE([libnet], [$LIBNET_VERSION]) -m4trace:configure.in:15: -1- AM_AUTOMAKE_VERSION([1.6.3]) -m4trace:configure.in:15: -1- AC_PROG_INSTALL -m4trace:configure.in:15: -1- AC_SUBST([INSTALL_PROGRAM]) -m4trace:configure.in:15: -1- AC_SUBST([INSTALL_SCRIPT]) -m4trace:configure.in:15: -1- AC_SUBST([INSTALL_DATA]) -m4trace:configure.in:15: -1- AC_SUBST([PACKAGE], [libnet]) -m4trace:configure.in:15: -1- AC_SUBST([VERSION], [$LIBNET_VERSION]) -m4trace:configure.in:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE]) -m4trace:configure.in:15: -1- AH_OUTPUT([PACKAGE], [/* Name of package */ -#undef PACKAGE]) -m4trace:configure.in:15: -1- AC_DEFINE_TRACE_LITERAL([VERSION]) -m4trace:configure.in:15: -1- AH_OUTPUT([VERSION], [/* Version number of package */ -#undef VERSION]) -m4trace:configure.in:15: -1- AC_SUBST([ACLOCAL]) -m4trace:configure.in:15: -1- AC_SUBST([AUTOCONF]) -m4trace:configure.in:15: -1- AC_SUBST([AUTOMAKE]) -m4trace:configure.in:15: -1- AC_SUBST([AUTOHEADER]) -m4trace:configure.in:15: -1- AC_SUBST([MAKEINFO]) -m4trace:configure.in:15: -1- AC_SUBST([AMTAR]) -m4trace:configure.in:15: -1- AC_SUBST([install_sh]) -m4trace:configure.in:15: -1- AC_SUBST([STRIP]) -m4trace:configure.in:15: -1- AC_SUBST([ac_ct_STRIP]) -m4trace:configure.in:15: -1- AC_SUBST([INSTALL_STRIP_PROGRAM]) -m4trace:configure.in:15: -1- AC_PROG_AWK -m4trace:configure.in:15: -1- AC_SUBST([AWK]) -m4trace:configure.in:15: -1- AC_PROG_MAKE_SET -m4trace:configure.in:15: -1- AC_SUBST([SET_MAKE]) -m4trace:configure.in:16: -1- AC_CONFIG_HEADERS([include/config.h], [# update the timestamp -echo 'timestamp for include/config.h' >"_AM_STAMP([include/config.h])" -], []) -m4trace:configure.in:17: -1- AM_MAINTAINER_MODE -m4trace:configure.in:17: -1- AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) -m4trace:configure.in:17: -1- AC_SUBST([MAINTAINER_MODE_TRUE]) -m4trace:configure.in:17: -1- AC_SUBST([MAINTAINER_MODE_FALSE]) -m4trace:configure.in:17: -1- AC_SUBST([MAINT]) -m4trace:configure.in:22: -1- AC_PROG_CC -m4trace:configure.in:22: -1- AC_SUBST([CC]) -m4trace:configure.in:22: -1- AC_SUBST([CFLAGS]) -m4trace:configure.in:22: -1- AC_SUBST([LDFLAGS]) -m4trace:configure.in:22: -1- AC_SUBST([CPPFLAGS]) -m4trace:configure.in:22: -1- AC_SUBST([CC]) -m4trace:configure.in:22: -1- AC_SUBST([ac_ct_CC]) -m4trace:configure.in:22: -1- AC_SUBST([CC]) -m4trace:configure.in:22: -1- AC_SUBST([ac_ct_CC]) -m4trace:configure.in:22: -1- AC_SUBST([CC]) -m4trace:configure.in:22: -1- AC_SUBST([CC]) -m4trace:configure.in:22: -1- AC_SUBST([ac_ct_CC]) -m4trace:configure.in:22: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext]) -m4trace:configure.in:22: -1- AC_SUBST([OBJEXT], [$ac_cv_objext]) -m4trace:configure.in:22: -1- AC_SUBST([DEPDIR]) -m4trace:configure.in:22: -1- AC_SUBST([am__include]) -m4trace:configure.in:22: -1- AC_SUBST([am__quote]) -m4trace:configure.in:22: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -m4trace:configure.in:22: -1- AC_SUBST([AMDEP_TRUE]) -m4trace:configure.in:22: -1- AC_SUBST([AMDEP_FALSE]) -m4trace:configure.in:22: -1- AC_SUBST([AMDEPBACKSLASH]) -m4trace:configure.in:22: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type]) -m4trace:configure.in:23: -1- AC_PROG_INSTALL -m4trace:configure.in:23: -1- AC_SUBST([INSTALL_PROGRAM]) -m4trace:configure.in:23: -1- AC_SUBST([INSTALL_SCRIPT]) -m4trace:configure.in:23: -1- AC_SUBST([INSTALL_DATA]) -m4trace:configure.in:24: -1- AC_PROG_RANLIB -m4trace:configure.in:24: -1- AC_SUBST([RANLIB]) -m4trace:configure.in:24: -1- AC_SUBST([ac_ct_RANLIB]) -m4trace:configure.in:26: -1- AC_CHECK_HEADERS([sys/sockio.h]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_SYS_SOCKIO_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_SOCKIO_H]) -m4trace:configure.in:26: -1- AC_HEADER_STDC -m4trace:configure.in:26: -1- AC_PROG_CPP -m4trace:configure.in:26: -1- AC_SUBST([CPP]) -m4trace:configure.in:26: -1- AC_SUBST([CPPFLAGS]) -m4trace:configure.in:26: -1- AC_SUBST([CPP]) -m4trace:configure.in:26: -1- AC_SUBST([EGREP]) -m4trace:configure.in:26: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS]) -m4trace:configure.in:26: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if you have the ANSI C header files. */ -#undef STDC_HEADERS]) -m4trace:configure.in:26: -1- AC_CHECK_HEADERS([sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h], [], [], [$ac_includes_default]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TYPES_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_STAT_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_STDLIB_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_STRING_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_MEMORY_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_MEMORY_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_STRINGS_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_INTTYPES_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_STDINT_H]) -m4trace:configure.in:26: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_UNISTD_H]) -m4trace:configure.in:32: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BIG_ENDIAN]) -m4trace:configure.in:32: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_LIL_ENDIAN]) -m4trace:configure.in:33: -1- AC_DEFINE_TRACE_LITERAL([LBL_ALIGN]) -m4trace:configure.in:36: -1- AC_SUBST([ENDIANESS]) -m4trace:configure.in:37: -1- AC_SUBST([LIBNET_VERSION]) -m4trace:configure.in:38: -1- AC_SUBST([HAVE_PACKET_SOCKET]) -m4trace:configure.in:39: -1- AC_SUBST([ADDITIONAL_LIBS]) -m4trace:configure.in:40: -1- AC_SUBST([LIBNET_CONFIG_DEFINES]) -m4trace:configure.in:41: -1- AC_SUBST([LIBNET_CONFIG_LIBS]) -m4trace:configure.in:42: -1- AC_SUBST([LIBNET_CONFIG_CFLAGS]) -m4trace:configure.in:47: -1- AC_PROG_GCC_TRADITIONAL -m4trace:configure.in:63: -1- AC_CHECK_FUNCS([strerror]) -m4trace:configure.in:63: -1- AH_OUTPUT([HAVE_STRERROR], [/* Define to 1 if you have the `strerror\' function. */ -#undef HAVE_STRERROR]) -m4trace:configure.in:71: -1- AC_LIBSOURCE([libnet_link_bpf.c]) -m4trace:configure.in:71: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:74: -1- AC_LIBSOURCE([libnet_link_pf.c]) -m4trace:configure.in:74: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:77: -1- AC_LIBSOURCE([libnet_link_snit.c]) -m4trace:configure.in:77: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:80: -1- AC_LIBSOURCE([libnet_link_nit.c]) -m4trace:configure.in:80: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:83: -1- AC_LIBSOURCE([libnet_link_snoop.c]) -m4trace:configure.in:83: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:86: -1- AC_LIBSOURCE([libnet_link_dlpi.c]) -m4trace:configure.in:86: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:88: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLPI]) -m4trace:configure.in:90: -1- AC_LIBSOURCE([libnet_link_linux.c]) -m4trace:configure.in:90: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:92: -1- AC_DEFINE_TRACE_LITERAL([HAVE_PACKET_SOCKET]) -m4trace:configure.in:93: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LINUX_PROCFS]) -m4trace:configure.in:93: -1- AH_OUTPUT([HAVE_LINUX_PROCFS], [/* Define if you have the Linux /proc filesystem. */ -#undef HAVE_LINUX_PROCFS]) -m4trace:configure.in:95: -1- AC_LIBSOURCE([libnet_link_bpf.c]) -m4trace:configure.in:95: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:98: -1- AC_LIBSOURCE([libnet_link_snit.c]) -m4trace:configure.in:98: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:101: -1- AC_LIBSOURCE([libnet_link_win32.c]) -m4trace:configure.in:101: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:104: -1- AC_LIBSOURCE([libnet_link_none.c]) -m4trace:configure.in:104: -1- AC_SUBST([LIB@&t@OBJS]) -m4trace:configure.in:125: -1- AC_DEFINE_TRACE_LITERAL([_BSD_SOURCE]) -m4trace:configure.in:126: -1- AC_DEFINE_TRACE_LITERAL([__BSD_SOURCE]) -m4trace:configure.in:127: -1- AC_DEFINE_TRACE_LITERAL([__FAVOR_BSD]) -m4trace:configure.in:130: -1- AC_CHECK_HEADERS([net/ethernet.h], [\ - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DHAVE_NET_ETHERNET_H"]) -m4trace:configure.in:130: -1- AH_OUTPUT([HAVE_NET_ETHERNET_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_NET_ETHERNET_H]) -m4trace:configure.in:134: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSDISH_OS]) -m4trace:configure.in:135: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSD_BYTE_SWAP]) -m4trace:configure.in:136: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKADDR_SA_LEN]) -m4trace:configure.in:141: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSDISH_OS]) -m4trace:configure.in:142: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSD_BYTE_SWAP]) -m4trace:configure.in:147: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSDISH_OS]) -m4trace:configure.in:148: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKADDR_SA_LEN]) -m4trace:configure.in:153: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSDISH_OS]) -m4trace:configure.in:154: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSD_BYTE_SWAP]) -m4trace:configure.in:159: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOCKADDR_SA_LEN]) -m4trace:configure.in:164: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOLARIS]) -m4trace:configure.in:165: -1- AC_CHECK_HEADERS([sys/bufmod.h sys/dlpi_ext.h]) -m4trace:configure.in:165: -1- AH_OUTPUT([HAVE_SYS_BUFMOD_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_BUFMOD_H]) -m4trace:configure.in:165: -1- AH_OUTPUT([HAVE_SYS_DLPI_EXT_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_DLPI_EXT_H]) -m4trace:configure.in:169: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DEV_DLPI]) -m4trace:configure.in:176: -1- AC_DEFINE_TRACE_LITERAL([DLPI_DEV_PREFIX]) -m4trace:configure.in:181: -1- AC_CHECK_LIB([socket], [socket], [], [{ { echo "$as_me:$LINENO: error: libsocket not found." >&5 -echo "$as_me: error: libsocket not found." >&2;} - { (exit 1); exit 1; }; }]) -m4trace:configure.in:181: -1- AH_OUTPUT([HAVE_LIBSOCKET], [/* Define to 1 if you have the `socket\' library (-lsocket). */ -#undef HAVE_LIBSOCKET]) -m4trace:configure.in:181: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBSOCKET]) -m4trace:configure.in:182: -1- AC_CHECK_LIB([nsl], [gethostbyname], [], [{ { echo "$as_me:$LINENO: error: libnsl not found." >&5 -echo "$as_me: error: libnsl not found." >&2;} - { (exit 1); exit 1; }; }]) -m4trace:configure.in:182: -1- AH_OUTPUT([HAVE_LIBNSL], [/* Define to 1 if you have the `nsl\' library (-lnsl). */ -#undef HAVE_LIBNSL]) -m4trace:configure.in:182: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBNSL]) -m4trace:configure.in:189: -1- AC_DEFINE_TRACE_LITERAL([STUPID_SOLARIS_CHECKSUM_BUG]) -m4trace:configure.in:192: -1- AC_DEFINE_TRACE_LITERAL([STUPID_SOLARIS_CHECKSUM_BUG]) -m4trace:configure.in:195: -1- AC_DEFINE_TRACE_LITERAL([STUPID_SOLARIS_CHECKSUM_BUG]) -m4trace:configure.in:196: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOLARIS_IPV6]) -m4trace:configure.in:199: -1- AC_DEFINE_TRACE_LITERAL([STUPID_SOLARIS_CHECKSUM_BUG]) -m4trace:configure.in:200: -1- AC_DEFINE_TRACE_LITERAL([HAVE_SOLARIS_IPV6]) -m4trace:configure.in:210: -1- AC_DEFINE_TRACE_LITERAL([HAVE_HPUX11]) -m4trace:configure.in:211: -1- AC_CHECK_HEADERS([sys/dlpi_ext.h]) -m4trace:configure.in:211: -1- AH_OUTPUT([HAVE_SYS_DLPI_EXT_H], [/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_DLPI_EXT_H]) -m4trace:configure.in:215: -1- AC_DEFINE_TRACE_LITERAL([LIBNET_BSDISH_OS]) -m4trace:configure.in:216: -1- AC_DEFINE_TRACE_LITERAL([NO_SNPRINTF]) -m4trace:configure.in:219: -1- AC_CHECK_LIB([packet], [PacketSetMode], [], [{ { echo "$as_me:$LINENO: error: packet lib not found." >&5 -echo "$as_me: error: packet lib not found." >&2;} - { (exit 1); exit 1; }; }]) -m4trace:configure.in:219: -1- AH_OUTPUT([HAVE_LIBPACKET], [/* Define to 1 if you have the `packet\' library (-lpacket). */ -#undef HAVE_LIBPACKET]) -m4trace:configure.in:219: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBPACKET]) -m4trace:configure.in:220: -1- AC_CHECK_LIB([wpcap], [pcap_setmode], [], [{ { echo "$as_me:$LINENO: error: pcap lib not found." >&5 -echo "$as_me: error: pcap lib not found." >&2;} - { (exit 1); exit 1; }; }]) -m4trace:configure.in:220: -1- AH_OUTPUT([HAVE_LIBWPCAP], [/* Define to 1 if you have the `wpcap\' library (-lwpcap). */ -#undef HAVE_LIBWPCAP]) -m4trace:configure.in:220: -1- AC_DEFINE_TRACE_LITERAL([HAVE_LIBWPCAP]) -m4trace:configure.in:234: -1- AC_CONFIG_FILES([Makefile src/Makefile include/Makefile \ - include/libnet/Makefile sample/Makefile version.h include/libnet.h \ - libnet-config]) -m4trace:configure.in:234: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs]) -m4trace:configure.in:234: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs]) diff --git a/libnet/config.guess b/libnet/config.guess deleted file mode 100644 index cd430f6..0000000 --- a/libnet/config.guess +++ /dev/null @@ -1,1314 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. - -timestamp='2001-08-21' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Written by Per Bothner . -# Please send patches to . -# -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. -# -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -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." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - - -dummy=dummy-$$ -trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int dummy(){}" > $dummy.c ; - for c in cc gcc c89 ; do - ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ; - if test $? = 0 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - rm -f $dummy.c $dummy.o $dummy.rel ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # Netbsd (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # Determine the machine/vendor (is the vendor relevant). - case "${UNAME_MACHINE}" in - amiga) machine=m68k-unknown ;; - arm32) machine=arm-unknown ;; - atari*) machine=m68k-atari ;; - sun3*) machine=m68k-sun ;; - mac68k) machine=m68k-apple ;; - macppc) machine=powerpc-apple ;; - hp3[0-9][05]) machine=m68k-hp ;; - ibmrt|romp-ibm) machine=romp-ibm ;; - *) machine=${UNAME_MACHINE}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE}" in - i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep __ELF__ >/dev/null - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit 0 ;; - alpha:OSF1:*:*) - if test $UNAME_RELEASE = "V4.0"; then - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - fi - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - cat <$dummy.s - .data -\$Lformat: - .byte 37,100,45,37,120,10,0 # "%d-%x\n" - - .text - .globl main - .align 4 - .ent main -main: - .frame \$30,16,\$26,0 - ldgp \$29,0(\$27) - .prologue 1 - .long 0x47e03d80 # implver \$0 - lda \$2,-1 - .long 0x47e20c21 # amask \$2,\$1 - lda \$16,\$Lformat - mov \$0,\$17 - not \$1,\$18 - jsr \$26,printf - ldgp \$29,0(\$26) - mov 0,\$16 - jsr \$26,exit - .end main -EOF - eval $set_cc_for_build - $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null - if test "$?" = 0 ; then - case `./$dummy` in - 0-0) - UNAME_MACHINE="alpha" - ;; - 1-0) - UNAME_MACHINE="alphaev5" - ;; - 1-1) - UNAME_MACHINE="alphaev56" - ;; - 1-101) - UNAME_MACHINE="alphapca56" - ;; - 2-303) - UNAME_MACHINE="alphaev6" - ;; - 2-307) - UNAME_MACHINE="alphaev67" - ;; - 2-1307) - UNAME_MACHINE="alphaev68" - ;; - esac - fi - rm -f $dummy.s $dummy - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit 0 ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit 0 ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit 0 ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit 0;; - amiga:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit 0 ;; - arc64:OpenBSD:*:*) - echo mips64el-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - arc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - hkmips:OpenBSD:*:*) - echo mips-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - pmax:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sgi:OpenBSD:*:*) - echo mips-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - wgrisc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit 0 ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit 0;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit 0;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit 0 ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit 0 ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - i86pc:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit 0 ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit 0 ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit 0 ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit 0 ;; - sparc*:NetBSD:*) - echo `uname -p`-unknown-netbsd${UNAME_RELEASE} - exit 0 ;; - atari*:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit 0 ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit 0 ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit 0 ;; - sun3*:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mac68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme88k:OpenBSD:*:*) - echo m88k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit 0 ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit 0 ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit 0 ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit 0 ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit 0 ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - eval $set_cc_for_build - $CC_FOR_BUILD $dummy.c -o $dummy \ - && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ - && rm -f $dummy.c $dummy && exit 0 - rm -f $dummy.c $dummy - echo mips-mips-riscos${UNAME_RELEASE} - exit 0 ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit 0 ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit 0 ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit 0 ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit 0 ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit 0 ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit 0 ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit 0 ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit 0 ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit 0 ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit 0 ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit 0 ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit 0 ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit 0 ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - sed 's/^ //' << EOF >$dummy.c - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - eval $set_cc_for_build - $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 - rm -f $dummy.c $dummy - echo rs6000-ibm-aix3.2.5 - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit 0 ;; - *:AIX:*:[45]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit 0 ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit 0 ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit 0 ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit 0 ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit 0 ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit 0 ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit 0 ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit 0 ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - case "${HPUX_REV}" in - 11.[0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - esac ;; - esac - fi ;; - esac - if [ "${HP_ARCH}" = "" ]; then - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - eval $set_cc_for_build - (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` - if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi - rm -f $dummy.c $dummy - fi ;; - esac - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit 0 ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit 0 ;; - 3050*:HI-UX:*:*) - sed 's/^ //' << EOF >$dummy.c - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - eval $set_cc_for_build - $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0 - rm -f $dummy.c $dummy - echo unknown-hitachi-hiuxwe2 - exit 0 ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit 0 ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit 0 ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit 0 ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit 0 ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit 0 ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit 0 ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit 0 ;; - hppa*:OpenBSD:*:*) - echo hppa-unknown-openbsd - exit 0 ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit 0 ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit 0 ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit 0 ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit 0 ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit 0 ;; - CRAY*X-MP:*:*:*) - echo xmp-cray-unicos - exit 0 ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*T3D:*:*:*) - echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY-2:*:*:*) - echo cray2-cray-unicos - exit 0 ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit 0 ;; - hp300:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit 0 ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; - *:FreeBSD:*:*) - echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` - exit 0 ;; - *:OpenBSD:*:*) - echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - exit 0 ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit 0 ;; - i*:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit 0 ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit 0 ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i386-pc-interix - exit 0 ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit 0 ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit 0 ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - *:GNU:*:*) - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit 0 ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit 0 ;; - arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux - exit 0 ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - mips:Linux:*:*) - case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in - big) echo mips-unknown-linux-gnu && exit 0 ;; - little) echo mipsel-unknown-linux-gnu && exit 0 ;; - esac - ;; - ppc:Linux:*:*) - echo powerpc-unknown-linux-gnu - exit 0 ;; - ppc64:Linux:*:*) - echo powerpc64-unknown-linux-gnu - exit 0 ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit 0 ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac - exit 0 ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu - exit 0 ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux - exit 0 ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - x86_64:Linux:*:*) - echo x86_64-unknown-linux-gnu - exit 0 ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - ld_supported_targets=`cd /; ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit 0 ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit 0 ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit 0 ;; - esac - # Determine whether the default compiler is a.out or elf - cat >$dummy.c < -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif -#ifdef __ELF__ -# ifdef __GLIBC__ -# if __GLIBC__ >= 2 - printf ("%s-pc-linux-gnu\n", argv[1]); -# else - printf ("%s-pc-linux-gnulibc1\n", argv[1]); -# endif -# else - printf ("%s-pc-linux-gnulibc1\n", argv[1]); -# endif -#else - printf ("%s-pc-linux-gnuaout\n", argv[1]); -#endif - return 0; -} -EOF - eval $set_cc_for_build - $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0 - rm -f $dummy.c $dummy - test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit 0 ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit 0 ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit 0 ;; - i*86:*:5:[78]*) - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit 0 ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` - (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit 0 ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit 0 ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp - exit 0 ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit 0 ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit 0 ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit 0 ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit 0 ;; - M68*:*:R3V[567]*:*) - test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; - 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4.3${OS_REL} && exit 0 - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4 && exit 0 ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit 0 ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit 0 ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit 0 ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit 0 ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit 0 ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit 0 ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit 0 ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit 0 ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit 0 ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit 0 ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit 0 ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit 0 ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit 0 ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit 0 ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit 0 ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit 0 ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit 0 ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Darwin:*:*) - echo `uname -p`-apple-darwin${UNAME_RELEASE} - exit 0 ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - if test "${UNAME_MACHINE}" = "x86pc"; then - UNAME_MACHINE=pc - fi - echo `uname -p`-${UNAME_MACHINE}-nto-qnx - exit 0 ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit 0 ;; - NSR-[KW]:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit 0 ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit 0 ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit 0 ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit 0 ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit 0 ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit 0 ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit 0 ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit 0 ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit 0 ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit 0 ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit 0 ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit 0 ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit 0 ;; -esac - -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -cat >$dummy.c < -# include -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -eval $set_cc_for_build -$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0 -rm -f $dummy.c $dummy - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit 0 ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit 0 ;; - c34*) - echo c34-convex-bsd - exit 0 ;; - c38*) - echo c38-convex-bsd - exit 0 ;; - c4*) - echo c4-convex-bsd - exit 0 ;; - esac -fi - -cat >&2 < in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -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` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/libnet/config.sub b/libnet/config.sub deleted file mode 100644 index 12ebc78..0000000 --- a/libnet/config.sub +++ /dev/null @@ -1,1410 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. - -timestamp='2001-08-13' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# 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. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Please send patches to . -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -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." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit 0;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis) - os= - basic_machine=$1 - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ - | c4x | clipper \ - | d10v | d30v | dsp16xx \ - | fr30 \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | m32r | m68000 | m68k | m88k | mcore \ - | mips16 | mips64 | mips64el | mips64orion | mips64orionel \ - | mips64vr4100 | mips64vr4100el | mips64vr4300 \ - | mips64vr4300el | mips64vr5000 | mips64vr5000el \ - | mipsbe | mipsel | mipsle | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | ns16k | ns32k \ - | openrisc \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | s390 | s390x \ - | sh | sh[34] | sh[34]eb | shbe | shle \ - | sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \ - | strongarm \ - | tahoe | thumb | tic80 | tron \ - | v850 \ - | we32k \ - | x86 | xscale \ - | z8k) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alphapca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armv*-* \ - | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c54x-* \ - | clipper-* | cray2-* | cydra-* \ - | d10v-* | d30v-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | m32r-* \ - | m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | mcore-* \ - | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \ - | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipsel-* \ - | mipsle-* | mipstx39-* | mipstx39el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | s390-* | s390x-* \ - | sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \ - | sparc-* | sparc64-* | sparc86x-* | sparclite-* \ - | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* \ - | t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \ - | v850-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \ - | ymp-* \ - | z8k-*) - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | ymp) - basic_machine=ymp-cray - os=-unicos - ;; - cray2) - basic_machine=cray2-cray - os=-unicos - ;; - [cjt]90) - basic_machine=${basic_machine}-cray - os=-unicos - ;; - crds | unos) - basic_machine=m68k-crds - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mipsel*-linux*) - basic_machine=mipsel-unknown - os=-linux-gnu - ;; - mips*-linux*) - basic_machine=mips-unknown - os=-linux-gnu - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - mmix*) - basic_machine=mmix-knuth - os=-mmixware - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pentium | p5 | k5 | k6 | nexgen) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon) - basic_machine=i686-pc - ;; - pentiumii | pentium2) - basic_machine=i686-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sparclite-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=t3e-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - windows32) - basic_machine=i386-pc - os=-windows32-msvcrt - ;; - xmp) - basic_machine=xmp-cray - os=-unicos - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - mips) - if [ x$os = x-linux-gnu ]; then - basic_machine=mips-unknown - else - basic_machine=mips-mips - fi - ;; - romp) - basic_machine=romp-ibm - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh3 | sh4 | sh3eb | sh4eb) - basic_machine=sh-unknown - ;; - sparc | sparcv9 | sparcv9b) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - c4x*) - basic_machine=c4x-none - os=-coff - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ - | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto*) - os=-nto-qnx - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-ibm) - os=-aix - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -vxsim* | -vxworks*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit 0 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/libnet/configure b/libnet/configure deleted file mode 100755 index 943ae68..0000000 --- a/libnet/configure +++ /dev/null @@ -1,6225 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.57. -# -# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -# 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 - -# Support unset when possible. -if (FOO=FOO; unset FOO) >/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 -n "`(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 - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="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="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= - -ac_unique_file="src/libnet_build_ip.c" -# 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_default_prefix=/usr -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 PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM AWK SET_MAKE MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE RANLIB ac_ct_RANLIB CPP EGREP ENDIANESS LIBNET_VERSION HAVE_PACKET_SOCKET ADDITIONAL_LIBS LIBNET_CONFIG_DEFINES LIBNET_CONFIG_LIBS LIBNET_CONFIG_CFLAGS 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] - --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --disable-dependency-tracking Speeds up one-time builds - --enable-dependency-tracking Do not reject slow dependency extractors - -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 -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` - - 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 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -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.57. 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.* *.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 - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# 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 - - - - - - - - - - - - - - - - - - - -LIBNET_VERSION=`cat VERSION` -echo "$as_me:$LINENO: result: beginning autoconfiguration process for libnet-$LIBNET_VERSION..." >&5 -echo "${ECHO_T}beginning autoconfiguration process for libnet-$LIBNET_VERSION..." >&6 -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.6" -# 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" -# ./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/* | \ - /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 - -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 - - # 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 - -# Define the identity of the package. - PACKAGE=libnet - VERSION=$LIBNET_VERSION - - -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"} - - -AMTAR=${AMTAR-"${am_missing_run}tar"} - -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. - - - -# Add the stamp file to the list of files AC keeps track of, -# along with our hook. - ac_config_headers="$ac_config_headers include/config.h" - - - -echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5 -echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6 - # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then - enableval="$enable_maintainer_mode" - USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi; - echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5 -echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6 - - -if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - - MAINT=$MAINTAINER_MODE_TRUE - - - -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 -#line $LINENO "configure" -/* 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" >&5 -echo $ECHO_N "checking for C compiler default output... $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 -#line $LINENO "configure" -/* 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 -#line $LINENO "configure" -/* 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>&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.$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 -#line $LINENO "configure" -/* 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>&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.$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 -#line $LINENO "configure" -/* 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; -} -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>&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.$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>&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 \ - ''\ - '#include ' \ - '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 -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -$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>&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.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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.$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 -rm -f .deps 2>/dev/null -mkdir .deps 2>/dev/null -if test -d .deps; then - DEPDIR=.deps -else - # MS-DOS does not allow filenames that begin with a dot. - DEPDIR=_deps -fi -rmdir .deps 2>/dev/null - - - ac_config_commands="$ac_config_commands depfiles" - - -am_make=${MAKE-make} -cat > confinc << 'END' -doit: - @echo done -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 | fgrep -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 - - 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 - # 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. - echo '#include "conftest.h"' > conftest.c - echo 'int i;' > conftest.h - echo "${am__include} ${am__quote}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=conftest.c object=conftest.o \ - depfile=conftest.Po tmpdepfile=conftest.TPo \ - $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 && - grep conftest.h conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - am_cv_CC_dependencies_compiler_type=$depmode - break - 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 - - -# 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" -# ./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/* | \ - /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 - - - -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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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 - 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 -#line $LINENO "configure" -/* 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>&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.$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 -#line $LINENO "configure" -/* 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 -#line $LINENO "configure" -/* 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 -#line $LINENO "configure" -/* 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.* *.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 -#line $LINENO "configure" -/* 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>&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.$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 - - - -for ac_header in sys/sockio.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -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 - - - -echo "$as_me:$LINENO: checking machine endianess" >&5 -echo $ECHO_N "checking machine endianess... $ECHO_C" >&6 - - cat > conftest.c << EOF -# include -# include - - int main() - { - union - { - short s; - char c[sizeof(short)]; - } un; - - un.s = 0x0102; - if (sizeof (short) == 2) - { - if (un.c [0] == 1 && un.c [1] == 2) - { - printf("B\n"); - } - else - { - if (un.c [0] == 2 && un.c [1] == 1) - { - printf("L\n"); - } - } - } - else - { - printf("?\n"); - } - return (EXIT_SUCCESS); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then - ac_cv_libnet_endianess=unknown - else - ./conftest > conftest.out - result=`cat conftest.out` - if test $result = "B"; then - ac_cv_libnet_endianess=big - elif test $result = "L"; then - ac_cv_libnet_endianess=lil - else - ac_cv_libnet_endianess=unknown - fi - fi - rm -f conftest* core core.conftest - - echo "$as_me:$LINENO: result: $ac_cv_libnet_endianess" >&5 -echo "${ECHO_T}$ac_cv_libnet_endianess" >&6 - - if test $ac_cv_libnet_endianess = big ; then - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BIG_ENDIAN 1 -_ACEOF - - ENDIANESS="LIBNET_BIG_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_BIG_ENDIAN" - elif test $ac_cv_libnet_endianess = lil ; then - cat >>confdefs.h <<\_ACEOF -#define LIBNET_LIL_ENDIAN 1 -_ACEOF - - ENDIANESS="LIBNET_LIL_ENDIAN" - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DLIBNET_LIL_ENDIAN" - fi - -echo "$as_me:$LINENO: checking if unaligned accesses fail" >&5 -echo $ECHO_N "checking if unaligned accesses fail... $ECHO_C" >&6 - if test "${ac_cv_lbl_unaligned_fail+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case "$target_cpu" in - - alpha|hp*|mips|sparc) - ac_cv_lbl_unaligned_fail=yes - ;; - - *) - cat >conftest.c < -# include -# include - unsigned char a[5] = { 1, 2, 3, 4, 5 }; - main() - { - unsigned int i; - pid_t pid; - int status; - /* avoid "core dumped" message */ - pid = fork(); - if (pid < 0) - { - exit(2); - } - if (pid > 0) - { - /* parent */ - pid = waitpid(pid, &status, 0); - if (pid < 0) - { - exit(3); - } - exit(!WIFEXITED(status)); - } - /* child */ - i = *(unsigned int *)&a[1]; - printf("%d\n", i); - exit(0); - } -EOF - ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \ - conftest.c $LIBS > /dev/null 2>&1 - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x conftest ; then - ac_cv_lbl_unaligned_fail=yes - else - ./conftest > conftest.out - if test ! -s conftest.out ; then - ac_cv_lbl_unaligned_fail=yes - else - ac_cv_lbl_unaligned_fail=no - fi - fi - rm -f conftest* core core.conftest - ;; - esac -fi - - echo "$as_me:$LINENO: result: $ac_cv_lbl_unaligned_fail" >&5 -echo "${ECHO_T}$ac_cv_lbl_unaligned_fail" >&6 - if test $ac_cv_lbl_unaligned_fail = yes ; then - cat >>confdefs.h <<\_ACEOF -#define LBL_ALIGN 1 -_ACEOF - - fi - - - - - - - - - - -if test $ac_cv_c_compiler_gnu = yes; then - echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6 -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TIOCGETP -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -else - ac_cv_prog_gcc_traditional=no -fi -rm -f conftest* - - - if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -Autoconf TCGETA -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then - ac_cv_prog_gcc_traditional=yes -fi -rm -f conftest* - - fi -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6 - if test $ac_cv_prog_gcc_traditional = yes; then - CC="$CC -traditional" - fi -fi - -if test "$GCC" = yes ; then - CFLAGS="$CFLAGS -Wall" -fi - - - - -for ac_func in strerror -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ -#ifdef __STDC__ -# include -#else -# include -#endif -/* 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 $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif - -int -main () -{ -return f != $ac_func; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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 - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -eval "$as_ac_var=no" -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - -echo "$as_me:$LINENO: checking link-layer packet interface type" >&5 -echo $ECHO_N "checking link-layer packet interface type... $ECHO_C" >&6 - -if test -r /dev/bpf0 ; then - LIBOBJS="$LIBOBJS libnet_link_bpf.$ac_objext" - echo "$as_me:$LINENO: result: found bpf" >&5 -echo "${ECHO_T}found bpf" >&6 -elif test -r /usr/include/net/pfilt.h ; then - LIBOBJS="$LIBOBJS libnet_link_pf.$ac_objext" - echo "$as_me:$LINENO: result: found pf" >&5 -echo "${ECHO_T}found pf" >&6 -elif test -r /dev/nit ; then - LIBOBJS="$LIBOBJS libnet_link_snit.$ac_objext" - echo "$as_me:$LINENO: result: found snit" >&5 -echo "${ECHO_T}found snit" >&6 -elif test -r /usr/include/sys/net/nit.h ; then - LIBOBJS="$LIBOBJS libnet_link_nit.$ac_objext" - echo "$as_me:$LINENO: result: found nit" >&5 -echo "${ECHO_T}found nit" >&6 -elif test -r /usr/include/net/raw.h ; then - LIBOBJS="$LIBOBJS libnet_link_snoop.$ac_objext" - echo "$as_me:$LINENO: result: found snoop" >&5 -echo "${ECHO_T}found snoop" >&6 -elif test -r /usr/include/sys/dlpi.h ; then - LIBOBJS="$LIBOBJS libnet_link_dlpi.$ac_objext" - echo "$as_me:$LINENO: result: found dlpi" >&5 -echo "${ECHO_T}found dlpi" >&6 - cat >>confdefs.h <<\_ACEOF -#define HAVE_DLPI 1 -_ACEOF - -elif test -r /usr/include/linux/socket.h ; then - LIBOBJS="$LIBOBJS libnet_link_linux.$ac_objext" - echo "$as_me:$LINENO: result: found linux primitives" >&5 -echo "${ECHO_T}found linux primitives" >&6 - - echo "$as_me:$LINENO: checking for packet socket (PF_SOCKET)" >&5 -echo $ECHO_N "checking for packet socket (PF_SOCKET)... $ECHO_C" >&6 - if test "${ac_libnet_have_packet_socket+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case "$target_os" in - - linux) - ac_libnet_have_packet_socket = no - ;; - *) - - cat > pf_packet-test.c << EOF -#include -#include -#include -#include -#include -#include /* for the glibc version number */ -#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 -#include -#include /* the L2 protocols */ -#else -#include -#include -#include /* The L2 protocols */ -#endif - -#ifndef SOL_PACKET -#define SOL_PACKET 263 -#endif /* SOL_PACKET */ - -int -main(int argc, char **argv) -{ - int fd; - - fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL)); - if (fd == -1) - { - if (errno == EPERM) - { - /* user's UID != 0 */ - printf("probably"); - exit (EXIT_FAILURE); - } - printf("no"); - exit (EXIT_FAILURE); - } - printf("yes"); - exit (EXIT_SUCCESS); -} -EOF - ${CC-cc} -o pf_packet-test $CFLAGS pf_packet-test.c >/dev/null 2>&1 - - # Oopz 4.3 BSD doesn't have this. Sorry. - if test ! -x ./pf_packet-test ; then - ac_libnet_have_packet_socket=choked - else - ac_libnet_have_packet_socket=`./pf_packet-test`; - fi - if test $ac_libnet_have_packet_socket = choked; then - echo "$as_me:$LINENO: result: test program compile choked... assuming no" >&5 -echo "${ECHO_T}test program compile choked... assuming no" >&6 - elif test $ac_libnet_have_packet_socket = yes; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - elif test $ac_libnet_have_packet_socket = probably; then - echo "$as_me:$LINENO: result: test program got EPERM... assuming yes" >&5 -echo "${ECHO_T}test program got EPERM... assuming yes" >&6 - elif test $ac_libnet_have_packet_socket = no; then - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - fi - - rm -f pf_packet-test* core core.pf_packet-test - ;; - esac -fi - - - if test $ac_libnet_have_packet_socket = yes -o $ac_libnet_have_packet_socket = probably; then - cat >>confdefs.h <<\_ACEOF -#define HAVE_PACKET_SOCKET 1 -_ACEOF - - fi - - echo "$as_me:$LINENO: checking for Linux proc filesystem" >&5 -echo $ECHO_N "checking for Linux proc filesystem... $ECHO_C" >&6 - if test "${ac_cv_libnet_linux_procfs+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" ; then - ac_cv_libnet_linux_procfs=yes - else - ac_cv_libnet_linux_procfs=no - fi -fi - - echo "$as_me:$LINENO: result: $ac_cv_libnet_linux_procfs" >&5 -echo "${ECHO_T}$ac_cv_libnet_linux_procfs" >&6 - if test $ac_cv_libnet_linux_procfs = yes ; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_LINUX_PROCFS 1 -_ACEOF - - fi -elif test -c /dev/bpf0 ; then # check again in case not readable - LIBOBJS="$LIBOBJS libnet_link_bpf.$ac_objext" - echo "$as_me:$LINENO: result: found bpf" >&5 -echo "${ECHO_T}found bpf" >&6 -elif test -c /dev/nit ; then # check again in case not readable - LIBOBJS="$LIBOBJS libnet_link_snit.$ac_objext" - echo "$as_me:$LINENO: result: found snit" >&5 -echo "${ECHO_T}found snit" >&6 -elif test "$target_os" = "cygwin" ; then - LIBOBJS="$LIBOBJS libnet_link_win32.$ac_objext" - echo "$as_me:$LINENO: result: found win32 wpcap" >&5 -echo "${ECHO_T}found win32 wpcap" >&6 -else - LIBOBJS="$LIBOBJS libnet_link_none.$ac_objext" - { echo "$as_me:$LINENO: WARNING: could not find a link-layer packet interface" >&5 -echo "$as_me: WARNING: could not find a link-layer packet interface" >&2;} - { echo "$as_me:$LINENO: WARNING: link-layer packet injection will not be available" >&5 -echo "$as_me: WARNING: link-layer packet injection will not be available" >&2;} -fi - -echo -n "scanning available packet construction modules: " -for dir in src/*build*c ; do - echo $dir | sed -e /src\\/libnet_build_/s/// | sed -e /\\.c/s/// | tr \\n \\040 -done -echo "" - - -case "$target_os" in - -*linux*) - cat >>confdefs.h <<\_ACEOF -#define _BSD_SOURCE 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define __BSD_SOURCE 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define __FAVOR_BSD 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD" - -for ac_header in net/ethernet.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - \ - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DHAVE_NET_ETHERNET_H" -fi - -done - - ;; - -*freebsd*) - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSD_BYTE_SWAP 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SOCKADDR_SA_LEN 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP -DHAVE_SOCKADDR_SA_LEN" - ;; - -*netbsd*) - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSD_BYTE_SWAP 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP" - ;; - -*openbsd*) - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SOCKADDR_SA_LEN 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS" - ;; - -*bsdi*) - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSD_BYTE_SWAP 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP" - ;; - -*darwin*) - cat >>confdefs.h <<\_ACEOF -#define HAVE_SOCKADDR_SA_LEN 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DHAVE_SOCKADDR_SA_LEN" - ;; - -*solaris*) - cat >>confdefs.h <<\_ACEOF -#define HAVE_SOLARIS 1 -_ACEOF - - - -for ac_header in sys/bufmod.h sys/dlpi_ext.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -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 - - echo "$as_me:$LINENO: checking for /dev/dlpi device" >&5 -echo $ECHO_N "checking for /dev/dlpi device... $ECHO_C" >&6 - if test -c /dev/dlpi; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - cat >>confdefs.h <<\_ACEOF -#define HAVE_DEV_DLPI 1 -_ACEOF - - else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - dir="/dev/dlpi" - echo "$as_me:$LINENO: checking for $dir directory" >&5 -echo $ECHO_N "checking for $dir directory... $ECHO_C" >&6 - if test -d $dir ; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 - cat >>confdefs.h <<_ACEOF -#define DLPI_DEV_PREFIX "$dir" -_ACEOF - - else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - fi - fi - -echo "$as_me:$LINENO: checking for socket in -lsocket" >&5 -echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6 -if test "${ac_cv_lib_socket_socket+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 socket (); -int -main () -{ -socket (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_socket_socket=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_socket_socket=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5 -echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6 -if test $ac_cv_lib_socket_socket = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBSOCKET 1 -_ACEOF - - LIBS="-lsocket $LIBS" - -else - { { echo "$as_me:$LINENO: error: libsocket not found." >&5 -echo "$as_me: error: libsocket not found." >&2;} - { (exit 1); exit 1; }; } -fi - - -echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5 -echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 -if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 gethostbyname (); -int -main () -{ -gethostbyname (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_nsl_gethostbyname=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_nsl_gethostbyname=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5 -echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 -if test $ac_cv_lib_nsl_gethostbyname = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBNSL 1 -_ACEOF - - LIBS="-lnsl $LIBS" - -else - { { echo "$as_me:$LINENO: error: libnsl not found." >&5 -echo "$as_me: error: libnsl not found." >&2;} - { (exit 1); exit 1; }; } -fi - - - case "`uname -r`" in - 5.4) - cat >>confdefs.h <<\_ACEOF -#define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - ;; - 5.5*) - cat >>confdefs.h <<\_ACEOF -#define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - ;; - 5.8) - cat >>confdefs.h <<\_ACEOF -#define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SOLARIS_IPV6 1 -_ACEOF - - ;; - 5.9) - cat >>confdefs.h <<\_ACEOF -#define STUPID_SOLARIS_CHECKSUM_BUG 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define HAVE_SOLARIS_IPV6 1 -_ACEOF - - ;; - - esac - - ADDITIONAL_LIBS='-lsocket -lnsl' - LIBNET_CONFIG_LIBS="$LIBNET_CONFIG_LIBS -lsocket -lnsl" - ;; - -*hpux11*) - cat >>confdefs.h <<\_ACEOF -#define HAVE_HPUX11 1 -_ACEOF - - -for ac_header in sys/dlpi_ext.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - 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 -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 -else - # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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>&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.$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 $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_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 - 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 in - yes:no ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; - no:yes ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------ ## -## Report this to bug-autoconf@gnu.org. ## -## ------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -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 - eval "$as_ac_Header=$ac_header_preproc" -fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 - -fi -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 - - ;; - -*cygwin*) - cat >>confdefs.h <<\_ACEOF -#define LIBNET_BSDISH_OS 1 -_ACEOF - - cat >>confdefs.h <<\_ACEOF -#define NO_SNPRINTF 1 -_ACEOF - - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DNO_SNPRINTF" - CFLAGS="$CFLAGS -mno-cygwin -O0 -fnative-struct -DNO_SNPRINTF -I/usr/include/pcap" - -echo "$as_me:$LINENO: checking for PacketSetMode in -lpacket" >&5 -echo $ECHO_N "checking for PacketSetMode in -lpacket... $ECHO_C" >&6 -if test "${ac_cv_lib_packet_PacketSetMode+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpacket $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 PacketSetMode (); -int -main () -{ -PacketSetMode (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_packet_PacketSetMode=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_packet_PacketSetMode=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_packet_PacketSetMode" >&5 -echo "${ECHO_T}$ac_cv_lib_packet_PacketSetMode" >&6 -if test $ac_cv_lib_packet_PacketSetMode = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBPACKET 1 -_ACEOF - - LIBS="-lpacket $LIBS" - -else - { { echo "$as_me:$LINENO: error: packet lib not found." >&5 -echo "$as_me: error: packet lib not found." >&2;} - { (exit 1); exit 1; }; } -fi - - -echo "$as_me:$LINENO: checking for pcap_setmode in -lwpcap" >&5 -echo $ECHO_N "checking for pcap_setmode in -lwpcap... $ECHO_C" >&6 -if test "${ac_cv_lib_wpcap_pcap_setmode+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lwpcap $LIBS" -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* 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 pcap_setmode (); -int -main () -{ -pcap_setmode (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext 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='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_wpcap_pcap_setmode=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_wpcap_pcap_setmode=no -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_wpcap_pcap_setmode" >&5 -echo "${ECHO_T}$ac_cv_lib_wpcap_pcap_setmode" >&6 -if test $ac_cv_lib_wpcap_pcap_setmode = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBWPCAP 1 -_ACEOF - - LIBS="-lwpcap $LIBS" - -else - { { echo "$as_me:$LINENO: error: pcap lib not found." >&5 -echo "$as_me: error: pcap lib not found." >&2;} - { (exit 1); exit 1; }; } -fi - - LIBS="$LIBS -lws2_32" - ;; - -*) - { echo "$as_me:$LINENO: WARNING: apparently your OS is not officially supported yet" >&5 -echo "$as_me: WARNING: apparently your OS is not officially supported yet" >&2;} - { echo "$as_me:$LINENO: WARNING: this may not work" >&5 -echo "$as_me: WARNING: this may not work" >&2;} - echo "$as_me:$LINENO: result: please send diffs to mike@infonexus.com" >&5 -echo "${ECHO_T}please send diffs to mike@infonexus.com" >&6 - ;; - -esac - - ac_config_files="$ac_config_files Makefile src/Makefile include/Makefile include/libnet/Makefile sample/Makefile version.h include/libnet.h libnet-config" - ac_config_commands="$ac_config_commands default" -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -{ - (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" - ;; - esac; -} | - sed ' - t clear - : clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" - cat confcache >$cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -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 "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } -fi -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 - -: ${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 - -# Support unset when possible. -if (FOO=FOO; unset FOO) >/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 -n "`(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 - as_mkdir_p=false -fi - -as_executable_p="test -f" - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="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="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.57. 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.57, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" - -Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 -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" ;; - "include/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; - "include/libnet/Makefile" ) CONFIG_FILES="$CONFIG_FILES include/libnet/Makefile" ;; - "sample/Makefile" ) CONFIG_FILES="$CONFIG_FILES sample/Makefile" ;; - "version.h" ) CONFIG_FILES="$CONFIG_FILES version.h" ;; - "include/libnet.h" ) CONFIG_FILES="$CONFIG_FILES include/libnet.h" ;; - "libnet-config" ) CONFIG_FILES="$CONFIG_FILES libnet-config" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;; - "include/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS include/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,@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,@AMTAR@,$AMTAR,;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,@AWK@,$AWK,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t -s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t -s,@MAINT@,$MAINT,;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,@RANLIB@,$RANLIB,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@CPP@,$CPP,;t t -s,@EGREP@,$EGREP,;t t -s,@ENDIANESS@,$ENDIANESS,;t t -s,@LIBNET_VERSION@,$LIBNET_VERSION,;t t -s,@HAVE_PACKET_SOCKET@,$HAVE_PACKET_SOCKET,;t t -s,@ADDITIONAL_LIBS@,$ADDITIONAL_LIBS,;t t -s,@LIBNET_CONFIG_DEFINES@,$LIBNET_CONFIG_DEFINES,;t t -s,@LIBNET_CONFIG_LIBS@,$LIBNET_CONFIG_LIBS,;t t -s,@LIBNET_CONFIG_CFLAGS@,$LIBNET_CONFIG_CFLAGS,;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 -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` - - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac - - 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 - # 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; } -_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; }; } - 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 - # Run the commands associated with the file. - case $ac_file in - include/config.h ) # update the timestamp -echo 'timestamp for include/config.h' >"include/stamp-h1" - ;; - esac -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'` - 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 -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` - - - { 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 - grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue - # Extract the definition of DEP_FILES from the Makefile without - # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` - test -z "$DEPDIR" && continue - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` - test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" - # 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 -e ' - /^DEP_FILES = .*\\\\$/ { - s/^DEP_FILES = // - :loop - s/\\\\$// - p - n - /\\\\$/ b loop - p - } - /^DEP_FILES = / s/^DEP_FILES = //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 - ;; - default ) chmod +x libnet-config ;; - 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/libnet/configure.in b/libnet/configure.in deleted file mode 100644 index 849a60b..0000000 --- a/libnet/configure.in +++ /dev/null @@ -1,235 +0,0 @@ -dnl $Id: configure.in,v 1.9 2004/03/01 20:26:11 mike Exp $ -dnl -dnl Libnet autoconfiguration information file -dnl Copyright (c) 1998 - 2002 Mike D. Schiffman -dnl All rights reserved. -dnl -dnl Process this file with autoconf to produce a configure script. - - -AC_INIT(src/libnet_build_ip.c) -LIBNET_VERSION=`cat VERSION` -AC_MSG_RESULT(beginning autoconfiguration process for libnet-$LIBNET_VERSION...) -AC_CANONICAL_SYSTEM - -AM_INIT_AUTOMAKE(libnet, $LIBNET_VERSION) -AM_CONFIG_HEADER(include/config.h) -AM_MAINTAINER_MODE - -dnl -dnl Check for the usual programs -dnl -AC_PROG_CC -AC_PROG_INSTALL -AC_PROG_RANLIB - -AC_CHECK_HEADERS(sys/sockio.h) - -dnl -dnl And some custom things -dnl - -AC_LIBNET_ENDIAN_CHECK -AC_LBL_UNALIGNED_ACCESS -dnl AC_LBL_LIBRARY_NET - -AC_SUBST(ENDIANESS) -AC_SUBST(LIBNET_VERSION) -AC_SUBST(HAVE_PACKET_SOCKET) -AC_SUBST(ADDITIONAL_LIBS) -AC_SUBST(LIBNET_CONFIG_DEFINES) -AC_SUBST(LIBNET_CONFIG_LIBS) -AC_SUBST(LIBNET_CONFIG_CFLAGS) - -dnl -dnl Check for typedefs, structures, and compiler characteristics -dnl -AC_PROG_GCC_TRADITIONAL -if test "$GCC" = yes ; then - CFLAGS="$CFLAGS -Wall" -fi - -dnl -dnl Set the root install directory -dnl -AC_PREFIX_DEFAULT(/usr) -dnl if test "$prefix" = "NONE"; then -dnl prefix="/usr" -dnl fi - -dnl -dnl Check for library functions. -dnl -AC_CHECK_FUNCS(strerror) - -dnl -dnl Get link-layer interface type -dnl -AC_MSG_CHECKING(link-layer packet interface type) - -if test -r /dev/bpf0 ; then - AC_LIBOBJ([libnet_link_bpf]) - AC_MSG_RESULT(found bpf) -elif test -r /usr/include/net/pfilt.h ; then - AC_LIBOBJ([libnet_link_pf]) - AC_MSG_RESULT(found pf) -elif test -r /dev/nit ; then - AC_LIBOBJ([libnet_link_snit]) - AC_MSG_RESULT(found snit) -elif test -r /usr/include/sys/net/nit.h ; then - AC_LIBOBJ([libnet_link_nit]) - AC_MSG_RESULT(found nit) -elif test -r /usr/include/net/raw.h ; then - AC_LIBOBJ([libnet_link_snoop]) - AC_MSG_RESULT(found snoop) -elif test -r /usr/include/sys/dlpi.h ; then - AC_LIBOBJ([libnet_link_dlpi]) - AC_MSG_RESULT(found dlpi) - AC_DEFINE(HAVE_DLPI) -elif test -r /usr/include/linux/socket.h ; then - AC_LIBOBJ([libnet_link_linux]) - AC_MSG_RESULT(found linux primitives) - AC_LIBNET_CHECK_PF_PACKET - AC_LIBNET_LINUX_PROCFS -elif test -c /dev/bpf0 ; then # check again in case not readable - AC_LIBOBJ([libnet_link_bpf]) - AC_MSG_RESULT(found bpf) -elif test -c /dev/nit ; then # check again in case not readable - AC_LIBOBJ([libnet_link_snit]) - AC_MSG_RESULT(found snit) -elif test "$target_os" = "cygwin" ; then - AC_LIBOBJ([libnet_link_win32]) - AC_MSG_RESULT(found win32 wpcap) -else - AC_LIBOBJ([libnet_link_none]) - AC_MSG_WARN(could not find a link-layer packet interface) - AC_MSG_WARN(link-layer packet injection will not be available) -fi - -dnl -dnl Inform user about the packet builders we've got -dnl -echo -n "scanning available packet construction modules: " -for dir in src/*build*c ; do - echo $dir | sed -e /src\\/libnet_build_/s/// | sed -e /\\.c/s/// | tr \\n \\040 -done -echo "" - -dnl -dnl Check and set OS specific parameters -dnl - -case "$target_os" in - -*linux*) - AC_DEFINE(_BSD_SOURCE) - AC_DEFINE(__BSD_SOURCE) - AC_DEFINE(__FAVOR_BSD) - LIBNET_CONFIG_DEFINES="-D_BSD_SOURCE -D__BSD_SOURCE -D__FAVOR_BSD" - AC_CHECK_HEADERS(net/ethernet.h, \ - LIBNET_CONFIG_DEFINES="$LIBNET_CONFIG_DEFINES -DHAVE_NET_ETHERNET_H") - ;; - -*freebsd*) - AC_DEFINE(LIBNET_BSDISH_OS) - AC_DEFINE(LIBNET_BSD_BYTE_SWAP) - AC_DEFINE(HAVE_SOCKADDR_SA_LEN) - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP -DHAVE_SOCKADDR_SA_LEN" - ;; - -*netbsd*) - AC_DEFINE(LIBNET_BSDISH_OS) - AC_DEFINE(LIBNET_BSD_BYTE_SWAP) - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP" - ;; - -*openbsd*) - AC_DEFINE(LIBNET_BSDISH_OS) - AC_DEFINE(HAVE_SOCKADDR_SA_LEN) - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS" - ;; - -*bsdi*) - AC_DEFINE(LIBNET_BSDISH_OS) - AC_DEFINE(LIBNET_BSD_BYTE_SWAP) - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DLIBNET_BSD_BYTE_SWAP" - ;; - -*darwin*) - AC_DEFINE(HAVE_SOCKADDR_SA_LEN) - LIBNET_CONFIG_DEFINES="-DHAVE_SOCKADDR_SA_LEN" - ;; - -*solaris*) - AC_DEFINE(HAVE_SOLARIS) - AC_CHECK_HEADERS(sys/bufmod.h sys/dlpi_ext.h) - AC_MSG_CHECKING(for /dev/dlpi device) - if test -c /dev/dlpi; then - AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_DEV_DLPI) - else - AC_MSG_RESULT(no) - dir="/dev/dlpi" - AC_MSG_CHECKING(for $dir directory) - if test -d $dir ; then - AC_MSG_RESULT(yes) - AC_DEFINE_UNQUOTED(DLPI_DEV_PREFIX, "$dir") - else - AC_MSG_RESULT(no) - fi - fi - AC_CHECK_LIB(socket, socket, ,AC_MSG_ERROR(libsocket not found.)) - AC_CHECK_LIB(nsl, gethostbyname, ,AC_MSG_ERROR(libnsl not found.)) - -dnl -dnl Broken checksums? -dnl - case "`uname -r`" in - 5.4) - AC_DEFINE(STUPID_SOLARIS_CHECKSUM_BUG) - ;; - 5.5*) - AC_DEFINE(STUPID_SOLARIS_CHECKSUM_BUG) - ;; - 5.8) - AC_DEFINE(STUPID_SOLARIS_CHECKSUM_BUG) - AC_DEFINE(HAVE_SOLARIS_IPV6) - ;; - 5.9) - AC_DEFINE(STUPID_SOLARIS_CHECKSUM_BUG) - AC_DEFINE(HAVE_SOLARIS_IPV6) - ;; - - esac - - ADDITIONAL_LIBS='-lsocket -lnsl' - LIBNET_CONFIG_LIBS="$LIBNET_CONFIG_LIBS -lsocket -lnsl" - ;; - -*hpux11*) - AC_DEFINE(HAVE_HPUX11) - AC_CHECK_HEADERS(sys/dlpi_ext.h) - ;; - -*cygwin*) - AC_DEFINE(LIBNET_BSDISH_OS) - AC_DEFINE(NO_SNPRINTF) - LIBNET_CONFIG_DEFINES="-DLIBNET_BSDISH_OS -DNO_SNPRINTF" - CFLAGS="$CFLAGS -mno-cygwin -O0 -fnative-struct -DNO_SNPRINTF -I/usr/include/pcap" - AC_CHECK_LIB(packet, PacketSetMode, ,AC_MSG_ERROR(packet lib not found.)) - AC_CHECK_LIB(wpcap, pcap_setmode, ,AC_MSG_ERROR(pcap lib not found.)) - LIBS="$LIBS -lws2_32" - ;; - -*) - AC_MSG_WARN(apparently your OS is not officially supported yet) - AC_MSG_WARN(this may not work) - AC_MSG_RESULT(please send diffs to mike@infonexus.com) - ;; - -esac - -AC_OUTPUT(Makefile src/Makefile include/Makefile \ - include/libnet/Makefile sample/Makefile version.h include/libnet.h \ - libnet-config, chmod +x libnet-config) -dnl EOF diff --git a/libnet/doc/html/acconfig_8h-source.html b/libnet/doc/html/acconfig_8h-source.html deleted file mode 100644 index 20fae5b..0000000 --- a/libnet/doc/html/acconfig_8h-source.html +++ /dev/null @@ -1,49 +0,0 @@ - - -libnet: acconfig.h Source File - - - - -

acconfig.h

00001 /*
-00002 dnl $Id: acconfig.h,v 1.2 2004/01/03 20:31:00 mike Exp $
-00003 dnl
-00004 dnl Libnet autoconfiguration acconfig.h file
-00005 dnl Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00006 dnl All rights reserved.
-00007 dnl
-00008 dnl Process this file with autoheader to produce a config.h file.
-00009 dnl
-00010 */
-00011 
-00012 #undef LIBNET_BSDISH_OS
-00013 #undef LIBNET_BSD_BYTE_SWAP
-00014 #undef DLPI_DEV_PREFIX
-00015 #undef HAVE_DEV_DLPI
-00016 #undef HAVE_SOLARIS
-00017 #undef HAVE_SOLARIS_IPV6
-00018 #undef HAVE_HPUX11
-00019 #undef HAVE_SOCKADDR_SA_LEN
-00020 #undef HAVE_DLPI
-00021 #undef HAVE_PACKET_SOCKET
-00022 #undef HAVE_STRUCT_IP_CSUM
-00023 #undef HAVE_LIB_PCAP
-00024 #undef LBL_ALIGN
-00025 #undef STUPID_SOLARIS_CHECKSUM_BUG
-00026 #undef _BSD_SOURCE
-00027 #undef __BSD_SOURCE
-00028 #undef __FAVOR_BSD
-00029 #undef LIBNET_BIG_ENDIAN
-00030 #undef LIBNET_LIL_ENDIAN
-00031 #undef NO_SNPRINTF
-00032 
-00033 
-00034 /*
-00035 dnl EOF
-00036 */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/annotated.html b/libnet/doc/html/annotated.html deleted file mode 100644 index a713d91..0000000 --- a/libnet/doc/html/annotated.html +++ /dev/null @@ -1,17 +0,0 @@ - - -libnet: Annotated Index - - - - -

libnet Data Structures

Here are the data structures with brief descriptions: - - -
libnet_802_1q_hdr
libnet_802_1x_hdr
-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/bpf_8h-source.html b/libnet/doc/html/bpf_8h-source.html deleted file mode 100644 index 4c18703..0000000 --- a/libnet/doc/html/bpf_8h-source.html +++ /dev/null @@ -1,277 +0,0 @@ - - -libnet: bpf.h Source File - - - - -

bpf.h

00001 /*-
-00002  * Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
-00003  *  The Regents of the University of California.  All rights reserved.
-00004  *
-00005  * This code is derived from the Stanford/CMU enet packet filter,
-00006  * (net/enet.c) distributed as part of 4.3BSD, and code contributed
-00007  * to Berkeley by Steven McCanne and Van Jacobson both of Lawrence 
-00008  * Berkeley Laboratory.
-00009  *
-00010  * Redistribution and use in source and binary forms, with or without
-00011  * modification, are permitted provided that the following conditions
-00012  * are met:
-00013  * 1. Redistributions of source code must retain the above copyright
-00014  *    notice, this list of conditions and the following disclaimer.
-00015  * 2. Redistributions in binary form must reproduce the above copyright
-00016  *    notice, this list of conditions and the following disclaimer in the
-00017  *    documentation and/or other materials provided with the distribution.
-00018  * 3. All advertising materials mentioning features or use of this software
-00019  *    must display the following acknowledgement:
-00020  *      This product includes software developed by the University of
-00021  *      California, Berkeley and its contributors.
-00022  * 4. Neither the name of the University nor the names of its contributors
-00023  *    may be used to endorse or promote products derived from this software
-00024  *    without specific prior written permission.
-00025  *
-00026  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-00027  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00028  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00029  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-00030  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00031  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00032  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00033  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00034  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00035  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00036  * SUCH DAMAGE.
-00037  *
-00038  *      @(#)bpf.h       7.1 (Berkeley) 5/7/91
-00039  *
-00040  * @(#) $Header: /usr/local/CVS/libnet/include/bpf.h,v 1.1.1.1 2003/06/26 21:55:10 route Exp $ (LBL)
-00041  */
-00042 
-00043 #ifndef BPF_MAJOR_VERSION
-00044 
-00045 /* BSD style release date */
-00046 #define BPF_RELEASE 199606
-00047 
-00048 typedef int bpf_int32;
-00049 typedef u_int bpf_u_int32;
-00050 
-00051 /*
-00052  * Alignment macros.  BPF_WORDALIGN rounds up to the next 
-00053  * even multiple of BPF_ALIGNMENT. 
-00054  */
-00055 #define BPF_ALIGNMENT sizeof(bpf_int32)
-00056 #define BPF_WORDALIGN(x) (((x)+(BPF_ALIGNMENT-1))&~(BPF_ALIGNMENT-1))
-00057 
-00058 #define BPF_MAXINSNS 512
-00059 #define BPF_MAXBUFSIZE 0x8000
-00060 #define BPF_MINBUFSIZE 32
-00061 
-00062 /*
-00063  *  Structure for BIOCSETF.
-00064  */
-00065 struct bpf_program {
-00066     u_int bf_len;
-00067     struct bpf_insn *bf_insns;
-00068 };
-00069  
-00070 /*
-00071  * Struct returned by BIOCGSTATS.
-00072  */
-00073 struct bpf_stat {
-00074     u_int bs_recv;      /* number of packets received */
-00075     u_int bs_drop;      /* number of packets dropped */
-00076 };
-00077 
-00078 /*
-00079  * Struct return by BIOCVERSION.  This represents the version number of 
-00080  * the filter language described by the instruction encodings below.
-00081  * bpf understands a program iff kernel_major == filter_major &&
-00082  * kernel_minor >= filter_minor, that is, if the value returned by the
-00083  * running kernel has the same major number and a minor number equal
-00084  * equal to or less than the filter being downloaded.  Otherwise, the
-00085  * results are undefined, meaning an error may be returned or packets
-00086  * may be accepted haphazardly.
-00087  * It has nothing to do with the source code version.
-00088  */
-00089 struct bpf_version {
-00090     u_short bv_major;
-00091     u_short bv_minor;
-00092 };
-00093 /* Current version number of filter architecture. */
-00094 #define BPF_MAJOR_VERSION 1
-00095 #define BPF_MINOR_VERSION 1
-00096 
-00097 /*
-00098  * BPF ioctls
-00099  *
-00100  * The first set is for compatibility with Sun's pcc style
-00101  * header files.  If your using gcc, we assume that you
-00102  * have run fixincludes so the latter set should work.
-00103  */
-00104 #if (defined(sun) || defined(ibm032)) && !defined(__GNUC__)
-00105 #define BIOCGBLEN   _IOR(B,102, u_int)
-00106 #define BIOCSBLEN   _IOWR(B,102, u_int)
-00107 #define BIOCSETF    _IOW(B,103, struct bpf_program)
-00108 #define BIOCFLUSH   _IO(B,104)
-00109 #define BIOCPROMISC _IO(B,105)
-00110 #define BIOCGDLT    _IOR(B,106, u_int)
-00111 #define BIOCGETIF   _IOR(B,107, struct ifreq)
-00112 #define BIOCSETIF   _IOW(B,108, struct ifreq)
-00113 #define BIOCSRTIMEOUT   _IOW(B,109, struct timeval)
-00114 #define BIOCGRTIMEOUT   _IOR(B,110, struct timeval)
-00115 #define BIOCGSTATS  _IOR(B,111, struct bpf_stat)
-00116 #define BIOCIMMEDIATE   _IOW(B,112, u_int)
-00117 #define BIOCVERSION _IOR(B,113, struct bpf_version)
-00118 #define BIOCSTCPF   _IOW(B,114, struct bpf_program)
-00119 #define BIOCSUDPF   _IOW(B,115, struct bpf_program)
-00120 #else
-00121 #define BIOCGBLEN   _IOR('B',102, u_int)
-00122 #define BIOCSBLEN   _IOWR('B',102, u_int)
-00123 #define BIOCSETF    _IOW('B',103, struct bpf_program)
-00124 #define BIOCFLUSH   _IO('B',104)
-00125 #define BIOCPROMISC _IO('B',105)
-00126 #define BIOCGDLT    _IOR('B',106, u_int)
-00127 #define BIOCGETIF   _IOR('B',107, struct ifreq)
-00128 #define BIOCSETIF   _IOW('B',108, struct ifreq)
-00129 #define BIOCSRTIMEOUT   _IOW('B',109, struct timeval)
-00130 #define BIOCGRTIMEOUT   _IOR('B',110, struct timeval)
-00131 #define BIOCGSTATS  _IOR('B',111, struct bpf_stat)
-00132 #define BIOCIMMEDIATE   _IOW('B',112, u_int)
-00133 #define BIOCVERSION _IOR('B',113, struct bpf_version)
-00134 #define BIOCSTCPF   _IOW('B',114, struct bpf_program)
-00135 #define BIOCSUDPF   _IOW('B',115, struct bpf_program)
-00136 #endif
-00137 
-00138 /*
-00139  * Structure prepended to each packet.
-00140  */
-00141 struct bpf_hdr {
-00142     struct timeval  bh_tstamp;  /* time stamp */
-00143     bpf_u_int32 bh_caplen;  /* length of captured portion */
-00144     bpf_u_int32 bh_datalen; /* original length of packet */
-00145     u_short     bh_hdrlen;  /* length of bpf header (this struct
-00146                        plus alignment padding) */
-00147 };
-00148 /*
-00149  * Because the structure above is not a multiple of 4 bytes, some compilers
-00150  * will insist on inserting padding; hence, sizeof(struct bpf_hdr) won't work.
-00151  * Only the kernel needs to know about it; applications use bh_hdrlen.
-00152  */
-00153 #ifdef KERNEL
-00154 #define SIZEOF_BPF_HDR 18
-00155 #endif
-00156 
-00157 /*
-00158  * Data-link level type codes.
-00159  */
-00160 #define DLT_NULL    0   /* no link-layer encapsulation */
-00161 #define DLT_EN10MB  1   /* Ethernet (10Mb) */
-00162 #define DLT_EN3MB   2   /* Experimental Ethernet (3Mb) */
-00163 #define DLT_AX25    3   /* Amateur Radio AX.25 */
-00164 #define DLT_PRONET  4   /* Proteon ProNET Token Ring */
-00165 #define DLT_CHAOS   5   /* Chaos */
-00166 #define DLT_IEEE802 6   /* IEEE 802 Networks */
-00167 #define DLT_ARCNET  7   /* ARCNET */
-00168 #define DLT_SLIP    8   /* Serial Line IP */
-00169 #define DLT_PPP     9   /* Point-to-point Protocol */
-00170 #define DLT_FDDI    10  /* FDDI */
-00171 #define DLT_ATM_RFC1483 11  /* LLC/SNAP encapsulated atm */
-00172 #define DLT_RAW     12  /* raw IP */
-00173 #define DLT_SLIP_BSDOS  13  /* BSD/OS Serial Line IP */
-00174 #define DLT_PPP_BSDOS   14  /* BSD/OS Point-to-point Protocol */
-00175 
-00176 /*
-00177  * The instruction encondings.
-00178  */
-00179 /* instruction classes */
-00180 #define BPF_CLASS(code) ((code) & 0x07)
-00181 #define     BPF_LD      0x00
-00182 #define     BPF_LDX     0x01
-00183 #define     BPF_ST      0x02
-00184 #define     BPF_STX     0x03
-00185 #define     BPF_ALU     0x04
-00186 #define     BPF_JMP     0x05
-00187 #define     BPF_RET     0x06
-00188 #define     BPF_MISC    0x07
-00189 
-00190 /* ld/ldx fields */
-00191 #define BPF_SIZE(code)  ((code) & 0x18)
-00192 #define     BPF_W       0x00
-00193 #define     BPF_H       0x08
-00194 #define     BPF_B       0x10
-00195 #define BPF_MODE(code)  ((code) & 0xe0)
-00196 #define     BPF_IMM     0x00
-00197 #define     BPF_ABS     0x20
-00198 #define     BPF_IND     0x40
-00199 #define     BPF_MEM     0x60
-00200 #define     BPF_LEN     0x80
-00201 #define     BPF_MSH     0xa0
-00202 
-00203 /* alu/jmp fields */
-00204 #define BPF_OP(code)    ((code) & 0xf0)
-00205 #define     BPF_ADD     0x00
-00206 #define     BPF_SUB     0x10
-00207 #define     BPF_MUL     0x20
-00208 #define     BPF_DIV     0x30
-00209 #define     BPF_OR      0x40
-00210 #define     BPF_AND     0x50
-00211 #define     BPF_LSH     0x60
-00212 #define     BPF_RSH     0x70
-00213 #define     BPF_NEG     0x80
-00214 #define     BPF_JA      0x00
-00215 #define     BPF_JEQ     0x10
-00216 #define     BPF_JGT     0x20
-00217 #define     BPF_JGE     0x30
-00218 #define     BPF_JSET    0x40
-00219 #define BPF_SRC(code)   ((code) & 0x08)
-00220 #define     BPF_K       0x00
-00221 #define     BPF_X       0x08
-00222 
-00223 /* ret - BPF_K and BPF_X also apply */
-00224 #define BPF_RVAL(code)  ((code) & 0x18)
-00225 #define     BPF_A       0x10
-00226 
-00227 /* misc */
-00228 #define BPF_MISCOP(code) ((code) & 0xf8)
-00229 #define     BPF_TAX     0x00
-00230 #define     BPF_TXA     0x80
-00231 
-00232 /*
-00233  * The instruction data structure.
-00234  */
-00235 struct bpf_insn {
-00236     u_short code;
-00237     u_char  jt;
-00238     u_char  jf;
-00239     bpf_int32 k;
-00240 };
-00241 
-00242 /*
-00243  * Macros for insn array initializers.
-00244  */
-00245 #define BPF_STMT(code, k) { (u_short)(code), 0, 0, k }
-00246 #define BPF_JUMP(code, k, jt, jf) { (u_short)(code), jt, jf, k }
-00247 
-00248 #ifdef KERNEL
-00249 extern u_int bpf_filter();
-00250 extern void bpfattach();
-00251 extern void bpf_tap();
-00252 extern void bpf_mtap();
-00253 #else
-00254 #if __STDC__
-00255 extern u_int bpf_filter(struct bpf_insn *, u_char *, u_int, u_int);
-00256 #endif
-00257 #endif
-00258 
-00259 /*
-00260  * Number of scratch memory words (for BPF_LD|BPF_MEM and BPF_ST).
-00261  */
-00262 #define BPF_MEMWORDS 16
-00263 
-00264 #endif
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/config_8h-source.html b/libnet/doc/html/config_8h-source.html deleted file mode 100644 index 840ddb9..0000000 --- a/libnet/doc/html/config_8h-source.html +++ /dev/null @@ -1,125 +0,0 @@ - - -libnet: config.h Source File - - - - -

config.h

00001 /* include/config.h.in.  Generated from configure.in by autoheader.  */
-00002 /*
-00003 dnl $Id: config.h,v 1.4 2004/01/03 20:31:00 mike Exp $
-00004 dnl
-00005 dnl Libnet autoconfiguration acconfig.h file
-00006 dnl Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007 dnl All rights reserved.
-00008 dnl
-00009 dnl Process this file with autoheader to produce a config.h file.
-00010 dnl
-00011 */
-00012 
-00013 #undef LIBNET_BSDISH_OS
-00014 #undef LIBNET_BSD_BYTE_SWAP
-00015 #undef DLPI_DEV_PREFIX
-00016 #undef HAVE_DEV_DLPI
-00017 #undef HAVE_SOLARIS
-00018 #undef HAVE_SOLARIS_IPV6
-00019 #undef HAVE_HPUX11
-00020 #undef HAVE_SOCKADDR_SA_LEN
-00021 #undef HAVE_DLPI
-00022 #undef HAVE_PACKET_SOCKET
-00023 #undef HAVE_STRUCT_IP_CSUM
-00024 #undef HAVE_LIB_PCAP
-00025 #undef LBL_ALIGN
-00026 #undef STUPID_SOLARIS_CHECKSUM_BUG
-00027 #undef _BSD_SOURCE
-00028 #undef __BSD_SOURCE
-00029 #undef __FAVOR_BSD
-00030 #undef LIBNET_BIG_ENDIAN
-00031 #define LIBNET_LIL_ENDIAN 1
-00032 #undef NO_SNPRINTF
-00033 
-00034 
-00035 /*
-00036 dnl EOF
-00037 */
-00038 
-00039 /* Define to 1 if you have the <inttypes.h> header file. */
-00040 #undef HAVE_INTTYPES_H
-00041 
-00042 /* Define to 1 if you have the `nsl' library (-lnsl). */
-00043 #undef HAVE_LIBNSL
-00044 
-00045 /* Define to 1 if you have the `packet' library (-lpacket). */
-00046 #undef HAVE_LIBPACKET
-00047 
-00048 /* Define to 1 if you have the `socket' library (-lsocket). */
-00049 #undef HAVE_LIBSOCKET
-00050 
-00051 /* Define to 1 if you have the `wpcap' library (-lwpcap). */
-00052 #undef HAVE_LIBWPCAP
-00053 
-00054 /* Define to 1 if you have the <memory.h> header file. */
-00055 #undef HAVE_MEMORY_H
-00056 
-00057 /* Define to 1 if you have the <net/ethernet.h> header file. */
-00058 #define HAVE_NET_ETHERNET_H 1
-00059 
-00060 /* Define to 1 if you have the <stdint.h> header file. */
-00061 #undef HAVE_STDINT_H
-00062 
-00063 /* Define to 1 if you have the <stdlib.h> header file. */
-00064 #undef HAVE_STDLIB_H
-00065 
-00066 /* Define to 1 if you have the `strerror' function. */
-00067 #define HAVE_STRERROR 1
-00068 
-00069 /* Define to 1 if you have the <strings.h> header file. */
-00070 #undef HAVE_STRINGS_H
-00071 
-00072 /* Define to 1 if you have the <string.h> header file. */
-00073 #undef HAVE_STRING_H
-00074 
-00075 /* Define to 1 if you have the <sys/bufmod.h> header file. */
-00076 #undef HAVE_SYS_BUFMOD_H
-00077 
-00078 /* Define to 1 if you have the <sys/dlpi_ext.h> header file. */
-00079 #undef HAVE_SYS_DLPI_EXT_H
-00080 
-00081 /* Define to 1 if you have the <sys/sockio.h> header file. */
-00082 #undef HAVE_SYS_SOCKIO_H
-00083 
-00084 /* Define to 1 if you have the <sys/stat.h> header file. */
-00085 #undef HAVE_SYS_STAT_H
-00086 
-00087 /* Define to 1 if you have the <sys/types.h> header file. */
-00088 #undef HAVE_SYS_TYPES_H
-00089 
-00090 /* Define to 1 if you have the <unistd.h> header file. */
-00091 #undef HAVE_UNISTD_H
-00092 
-00093 /* Name of package */
-00094 #undef PACKAGE
-00095 
-00096 /* Define to the address where bug reports for this package should be sent. */
-00097 #undef PACKAGE_BUGREPORT
-00098 
-00099 /* Define to the full name of this package. */
-00100 #undef PACKAGE_NAME
-00101 
-00102 /* Define to the full name and version of this package. */
-00103 #undef PACKAGE_STRING
-00104 
-00105 /* Define to the one symbol short name of this package. */
-00106 #undef PACKAGE_TARNAME
-00107 
-00108 /* Define to the version of this package. */
-00109 #undef PACKAGE_VERSION
-00110 
-00111 /* Define to 1 if you have the ANSI C header files. */
-00112 #undef STDC_HEADERS
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/doxygen.css b/libnet/doc/html/doxygen.css deleted file mode 100644 index a89dd24..0000000 --- a/libnet/doc/html/doxygen.css +++ /dev/null @@ -1,169 +0,0 @@ -H1 { - text-align: center; - font-family: Arial, Helvetica, sans-serif; -} -H2 { - font-family: Geneva, Arial, Helvetica, sans-serif; -} -CAPTION { font-weight: bold } -DIV.qindex { width: 100%; - background-color: #eeeeff; - border: 4px solid #eeeeff; - text-align: center; - margin-bottom: 2px -} -A.qindex { text-decoration: none; font-weight: bold; color: #0000ee } -A.qindex:visited { text-decoration: none; font-weight: bold; color: #0000ee } -A.qindex:hover { text-decoration: none; background-color: #ddddff } -A.qindexHL { text-decoration: none; font-weight: bold; - background-color: #6666cc; - color: #ffffff - } -A.qindexHL:hover { text-decoration: none; background-color: #6666cc; color: #ffffff } -A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff } -A.el { text-decoration: none; font-weight: bold } -A.elRef { font-weight: bold } -A.code { text-decoration: none; font-weight: normal; color: #4444ee } -A.codeRef { font-weight: normal; color: #4444ee } -A:hover { text-decoration: none; background-color: #f2f2ff } -DL.el { margin-left: -1cm } -DIV.fragment { - width: 98%; - border: 1px solid #CCCCCC; - background-color: #f5f5f5; - padding-left: 4px; - margin: 4px; -} -DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px } -TD.md { background-color: #f2f2ff; font-weight: bold; } -TD.mdname1 { background-color: #f2f2ff; font-weight: bold; color: #602020; } -TD.mdname { background-color: #f2f2ff; font-weight: bold; color: #602020; width: 600px; } -DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold } -DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller } -BODY { - background: white; - color: black; - margin-right: 20px; - margin-left: 20px; -} -TD.indexkey { - background-color: #eeeeff; - font-weight: bold; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px -} -TD.indexvalue { - background-color: #eeeeff; - font-style: italic; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px -} -TR.memlist { - background-color: #f0f0f0; -} -P.formulaDsp { text-align: center; } -IMG.formulaDsp { } -IMG.formulaInl { vertical-align: middle; } -SPAN.keyword { color: #008000 } -SPAN.keywordtype { color: #604020 } -SPAN.keywordflow { color: #e08000 } -SPAN.comment { color: #800000 } -SPAN.preprocessor { color: #806020 } -SPAN.stringliteral { color: #002080 } -SPAN.charliteral { color: #008080 } -.mdTable { - border: 1px solid #868686; - background-color: #f2f2ff; -} -.mdRow { - padding: 8px 20px; -} -.mdescLeft { - font-size: smaller; - font-family: Arial, Helvetica, sans-serif; - background-color: #FAFAFA; - padding-left: 8px; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; -} -.mdescRight { - font-size: smaller; - font-family: Arial, Helvetica, sans-serif; - font-style: italic; - background-color: #FAFAFA; - padding-left: 4px; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; - padding-bottom: 0px; - padding-right: 8px; -} -.memItemLeft { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-style: solid; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-family: Geneva, Arial, Helvetica, sans-serif; - font-size: 12px; -} -.memItemRight { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-style: solid; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-family: Geneva, Arial, Helvetica, sans-serif; - font-size: 13px; -} -.search { color: #0000ee; - font-weight: bold; -} -FORM.search { - margin-bottom: 0px; - margin-top: 0px; -} -INPUT.search { font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #eeeeff; -} -TD.tiny { font-size: 75%; -} diff --git a/libnet/doc/html/doxygen.png b/libnet/doc/html/doxygen.png deleted file mode 100644 index 96ae72c..0000000 Binary files a/libnet/doc/html/doxygen.png and /dev/null differ diff --git a/libnet/doc/html/files.html b/libnet/doc/html/files.html deleted file mode 100644 index 9a058a7..0000000 --- a/libnet/doc/html/files.html +++ /dev/null @@ -1,29 +0,0 @@ - - -libnet: File Index - - - - -

libnet File List

Here is a list of all documented files with brief descriptions: - - - - - - - - - - - - - - -
acconfig.h [code]
bpf.h [code]
config.h [code]
getopt.h [code]
gnuc.h [code]
ifaddrlist.h [code]
in_systm.h [code]
libnet-asn1.h [code]
libnet-functions.h [code]Libnet exported function prototypes
libnet-headers.h [code]Libnet header information
libnet-macros.h [code]Libnet macros and symbloc constants
libnet-structures.h [code]
libnet-types.h [code]
libnet.h [code]Toplevel libnet header file
-
Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/functions.html b/libnet/doc/html/functions.html deleted file mode 100644 index 2e467a0..0000000 --- a/libnet/doc/html/functions.html +++ /dev/null @@ -1,26 +0,0 @@ - - -libnet: Compound Member Index - - - - - - -

-Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:

-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/functions_vars.html b/libnet/doc/html/functions_vars.html deleted file mode 100644 index 0e8d73a..0000000 --- a/libnet/doc/html/functions_vars.html +++ /dev/null @@ -1,26 +0,0 @@ - - -libnet: Compound Member Index - - - - - - -

-

-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/getopt_8h-source.html b/libnet/doc/html/getopt_8h-source.html deleted file mode 100644 index 5ea497b..0000000 --- a/libnet/doc/html/getopt_8h-source.html +++ /dev/null @@ -1,97 +0,0 @@ - - -libnet: getopt.h Source File - - - - -

getopt.h

00001 /*
-00002  * Copyright (c) 1987, 1993, 1994, 1996
-00003  *  The Regents of the University of California.  All rights reserved.
-00004  *
-00005  * Redistribution and use in source and binary forms, with or without
-00006  * modification, are permitted provided that the following conditions
-00007  * are met:
-00008  * 1. Redistributions of source code must retain the above copyright
-00009  *    notice, this list of conditions and the following disclaimer.
-00010  * 2. Redistributions in binary form must reproduce the above copyright
-00011  *    notice, this list of conditions and the following disclaimer in the
-00012  *    documentation and/or other materials provided with the distribution.
-00013  * 3. All advertising materials mentioning features or use of this software
-00014  *    must display the following acknowledgement:
-00015  *  This product includes software developed by the University of
-00016  *  California, Berkeley and its contributors.
-00017  * 4. Neither the name of the University nor the names of its contributors
-00018  *    may be used to endorse or promote products derived from this software
-00019  *    without specific prior written permission.
-00020  *
-00021  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-00022  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00023  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00024  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-00025  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00026  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00027  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00028  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00029  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00030  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00031  * SUCH DAMAGE.
-00032  */
-00033 
-00034 #ifndef __GETOPT_H__
-00035 #define __GETOPT_H__
-00036 
-00037 #ifdef __cplusplus
-00038 extern "C" {
-00039 #endif
-00040 
-00041 extern int   opterr;      /* if error message should be printed */
-00042 extern int   optind;      /* index into parent argv vector */
-00043 extern int   optopt;      /* character checked for validity */
-00044 extern int   optreset;    /* reset getopt */
-00045 extern char *optarg;      /* argument associated with option */
-00046 
-00047 int getopt (int, char * const *, const char *);
-00048 
-00049 #ifdef __cplusplus
-00050 }
-00051 #endif
-00052 
-00053 #endif /* __GETOPT_H__ */
-00054 
-00055 #ifndef __UNISTD_GETOPT__
-00056 #ifndef __GETOPT_LONG_H__
-00057 #define __GETOPT_LONG_H__
-00058 
-00059 #ifdef __cplusplus
-00060 extern "C" {
-00061 #endif
-00062 
-00063 struct option {
-00064     const char *name;
-00065     int  has_arg;
-00066     int *flag;
-00067     int val;
-00068 };
-00069 
-00070 int getopt_long (int, char *const *, const char *, const struct option *, int *);
-00071 #ifndef HAVE_DECL_GETOPT
-00072 #define HAVE_DECL_GETOPT 1
-00073 #endif
-00074 
-00075 #define no_argument             0
-00076 #define required_argument       1
-00077 #define optional_argument       2
-00078 
-00079 #ifdef __cplusplus
-00080 }
-00081 #endif
-00082 
-00083 #endif /* __GETOPT_LONG_H__ */
-00084 #endif /* __UNISTD_GETOPT__ */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/globals.html b/libnet/doc/html/globals.html deleted file mode 100644 index 2f6a14b..0000000 --- a/libnet/doc/html/globals.html +++ /dev/null @@ -1,219 +0,0 @@ - - -libnet: File Member Index - - - - - -
f | i | l
- -

- -

-Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:

- f -

-

- i -

-

- l -

-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/globals_defs.html b/libnet/doc/html/globals_defs.html deleted file mode 100644 index 4a3daed..0000000 --- a/libnet/doc/html/globals_defs.html +++ /dev/null @@ -1,104 +0,0 @@ - - -libnet: File Member Index - - - - - -
f | i | l
- -

- -

-

- f -

-

- i -

-

- l -

-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/globals_func.html b/libnet/doc/html/globals_func.html deleted file mode 100644 index 4c4f925..0000000 --- a/libnet/doc/html/globals_func.html +++ /dev/null @@ -1,136 +0,0 @@ - - -libnet: File Member Index - - - - - - - -

- -

-

- l -

-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/gnuc_8h-source.html b/libnet/doc/html/gnuc_8h-source.html deleted file mode 100644 index 2ff4c44..0000000 --- a/libnet/doc/html/gnuc_8h-source.html +++ /dev/null @@ -1,56 +0,0 @@ - - -libnet: gnuc.h Source File - - - - -

gnuc.h

00001 /* @(#) $Header: /usr/local/CVS/libnet/include/gnuc.h,v 1.1.1.1 2003/06/26 21:55:10 route Exp $ (LBL) */
-00002 
-00003 /* Define __P() macro, if necessary */
-00004 #ifndef __P
-00005 #if __STDC__
-00006 #define __P(protos) protos
-00007 #else
-00008 #define __P(protos) ()
-00009 #endif
-00010 #endif
-00011 
-00012 /* inline foo */
-00013 #ifdef __GNUC__
-00014 #define inline __inline
-00015 #else
-00016 #define inline
-00017 #endif
-00018 
-00019 /*
-00020  * Handle new and old "dead" routine prototypes
-00021  *
-00022  * For example:
-00023  *
-00024  *  __dead void foo(void) __attribute__((volatile));
-00025  *
-00026  */
-00027 #ifdef __GNUC__
-00028 #ifndef __dead
-00029 #define __dead volatile
-00030 #endif
-00031 #if __GNUC__ < 2  || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
-00032 #ifndef __attribute__
-00033 #define __attribute__(args)
-00034 #endif
-00035 #endif
-00036 #else
-00037 #ifndef __dead
-00038 #define __dead
-00039 #endif
-00040 #ifndef __attribute__
-00041 #define __attribute__(args)
-00042 #endif
-00043 #endif
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/graph_legend.dot b/libnet/doc/html/graph_legend.dot deleted file mode 100644 index 5420927..0000000 --- a/libnet/doc/html/graph_legend.dot +++ /dev/null @@ -1,22 +0,0 @@ -digraph G -{ - edge [fontname="Helvetica",fontsize=10,labelfontname="Helvetica",labelfontsize=10]; - node [fontname="Helvetica",fontsize=10,shape=record]; - Node9 [shape="box",label="Inherited",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",style="filled" fontcolor="white"]; - Node10 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="Helvetica"]; - Node10 [shape="box",label="PublicBase",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classPublicBase.html"]; - Node11 -> Node10 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="Helvetica"]; - Node11 [shape="box",label="Truncated",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="red",URL="$classTruncated.html"]; - Node13 -> Node9 [dir=back,color="darkgreen",fontsize=10,style="solid",fontname="Helvetica"]; - Node13 [shape="box",label="ProtectedBase",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classProtectedBase.html"]; - Node14 -> Node9 [dir=back,color="firebrick4",fontsize=10,style="solid",fontname="Helvetica"]; - Node14 [shape="box",label="PrivateBase",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classPrivateBase.html"]; - Node15 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="Helvetica"]; - Node15 [shape="box",label="Undocumented",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="grey75"]; - Node16 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="Helvetica"]; - Node16 [shape="box",label="Templ< int >",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classTempl.html"]; - Node17 -> Node16 [dir=back,color="orange",fontsize=10,style="dashed",label="< int >",fontname="Helvetica"]; - Node17 [shape="box",label="Templ< T >",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classTempl.html"]; - Node18 -> Node9 [dir=back,color="darkorchid3",fontsize=10,style="dashed",label="m_usedClass",fontname="Helvetica"]; - Node18 [shape="box",label="Used",fontsize=10,height=0.2,width=0.4,fontname="Helvetica",color="black",URL="$classUsed.html"]; -} diff --git a/libnet/doc/html/graph_legend.html b/libnet/doc/html/graph_legend.html deleted file mode 100644 index c6e7273..0000000 --- a/libnet/doc/html/graph_legend.html +++ /dev/null @@ -1,75 +0,0 @@ - - -libnet: Graph Legend - - - - -

Graph Legend

This page explains how to interpret the graphs that are generated by doxygen.

-Consider the following example:

/*! Invisible class because of truncation */
-class Invisible { };
-
-/*! Truncated class, inheritance relation is hidden */
-class Truncated : public Invisible { };
-
-/* Class not documented with doxygen comments */
-class Undocumented { };
-
-/*! Class that is inherited using public inheritance */
-class PublicBase : public Truncated { };
-
-/*! A template class */
-template<class T> class Templ { };
-
-/*! Class that is inherited using protected inheritance */
-class ProtectedBase { };
-
-/*! Class that is inherited using private inheritance */
-class PrivateBase { };
-
-/*! Class that is used by the Inherited class */
-class Used { };
-
-/*! Super class that inherits a number of other classes */
-class Inherited : public PublicBase,
-                  protected ProtectedBase,
-                  private PrivateBase,
-                  public Undocumented
-                  public Templ<int>
-{
-  private:
-    Used *m_usedClass;
-};
-
If the MAX_DOT_GRAPH_HEIGHT tag in the configuration file is set to 240 this will result in the following graph:

-

-graph_legend.png -
-

-The boxes in the above graph have the following meaning:

    -
  • -A filled black box represents the struct or class for which the graph is generated.
  • -
  • -A box with a black border denotes a documented struct or class.
  • -
  • -A box with a grey border denotes an undocumented struct or class.
  • -
  • -A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • -
-The arrows have the following meaning:
    -
  • -A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • -
  • -A dark green arrow is used for protected inheritance.
  • -
  • -A dark red arrow is used for private inheritance.
  • -
  • -A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • -
  • -A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • -
-
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/ifaddrlist_8h-source.html b/libnet/doc/html/ifaddrlist_8h-source.html deleted file mode 100644 index 35603cc..0000000 --- a/libnet/doc/html/ifaddrlist_8h-source.html +++ /dev/null @@ -1,65 +0,0 @@ - - -libnet: ifaddrlist.h Source File - - - - -

ifaddrlist.h

00001 /*
-00002  * Copyright (c) 1997
-00003  *      The Regents of the University of California.  All rights reserved.
-00004  *
-00005  * Redistribution and use in source and binary forms, with or without
-00006  * modification, are permitted provided that: (1) source code distributions
-00007  * retain the above copyright notice and this paragraph in its entirety, (2)
-00008  * distributions including binary code include the above copyright notice and
-00009  * this paragraph in its entirety in the documentation or other materials
-00010  * provided with the distribution, and (3) all advertising materials mentioning
-00011  * features or use of this software display the following acknowledgement:
-00012  * ``This product includes software developed by the University of California,
-00013  * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
-00014  * the University nor the names of its contributors may be used to endorse
-00015  * or promote products derived from this software without specific prior
-00016  * written permission.
-00017  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
-00018  * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-00019  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-00020  *
-00021  */
-00022 
-00023 struct ifaddrlist
-00024 {
-00025 #if (HAVE_SOLARIS || HAVE_HPUX11)
-00026     u_int addr;
-00027 #else
-00028     u_int32_t addr;              
-00029 #endif
-00030     int8_t *device;
-00031 };
-00032 
-00033 struct libnet_ifaddr_list
-00034 {
-00035     u_int32_t addr;
-00036     int8_t *device;
-00037 };
-00038 
-00039 int
-00040 ifaddrlist(
-00041     struct ifaddrlist **,
-00042     int8_t *
-00043     );
-00044 
-00045 
-00046 int
-00047 set_up_interface(
-00048     struct sockaddr_in **,
-00049     u_int8_t **
-00050     );
-00051 
-00052 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/in__systm_8h-source.html b/libnet/doc/html/in__systm_8h-source.html deleted file mode 100644 index b57135e..0000000 --- a/libnet/doc/html/in__systm_8h-source.html +++ /dev/null @@ -1,90 +0,0 @@ - - -libnet: in_systm.h Source File - - - - -

in_systm.h

00001 /*
-00002  * Copyright (c) 1982, 1986, 1993
-00003  *  The Regents of the University of California.  All rights reserved.
-00004  *
-00005  * Redistribution and use in source and binary forms, with or without
-00006  * modification, are permitted provided that the following conditions
-00007  * are met:
-00008  * 1. Redistributions of source code must retain the above copyright
-00009  *    notice, this list of conditions and the following disclaimer.
-00010  * 2. Redistributions in binary form must reproduce the above copyright
-00011  *    notice, this list of conditions and the following disclaimer in the
-00012  *    documentation and/or other materials provided with the distribution.
-00013  * 3. All advertising materials mentioning features or use of this software
-00014  *    must display the following acknowledgement:
-00015  *  This product includes software developed by the University of
-00016  *  California, Berkeley and its contributors.
-00017  * 4. Neither the name of the University nor the names of its contributors
-00018  *    may be used to endorse or promote products derived from this software
-00019  *    without specific prior written permission.
-00020  *
-00021  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-00022  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00023  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00024  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-00025  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00026  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00027  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00028  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00029  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00030  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00031  * SUCH DAMAGE.
-00032  *
-00033  *  @(#)in_systm.h  8.1 (Berkeley) 6/10/93
-00034  * $FreeBSD: src/sys/netinet/in_systm.h,v 1.9 1999/12/29 04:41:00 peter Exp $
-00035  */
-00036 
-00037 #ifdef _WIN32
-00038 #ifndef _NETINET_IN_SYSTM_H_
-00039 #define _NETINET_IN_SYSTM_H_
-00040 
-00041 typedef unsigned char  u_int8_t;
-00042 typedef unsigned short u_int16_t;
-00043 typedef unsigned int   u_int32_t;
-00044 typedef unsigned __int64 u_int64_t;
-00045 
-00046 typedef __int64 int64_t;
-00047 typedef int64_t rlim_t;
-00048 
-00049 
-00050 typedef u_int32_t in_addr_t;
-00051 typedef u_int32_t in_port_t;
-00052 
-00053 /*
-00054  * Miscellaneous internetwork
-00055  * definitions for kernel.
-00056  */
-00057 
-00058 /*
-00059  * Network types.
-00060  *
-00061  * Internally the system keeps counters in the headers with the bytes
-00062  * swapped so that VAX instructions will work on them.  It reverses
-00063  * the bytes before transmission at each protocol level.  The n_ types
-00064  * represent the types with the bytes in ``high-ender'' order.
-00065  */
-00066 typedef u_int16_t n_short;      /* short as received from the net */
-00067 typedef u_int32_t n_long;       /* long as received from the net */
-00068 
-00069 typedef u_int32_t n_time;       /* ms since 00:00 GMT, byte rev */
-00070 
-00071 #ifdef _KERNEL
-00072 n_time   iptime __P((void));
-00073 #endif
-00074 
-00075 #endif
-00076 
-00077 #endif
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/index.html b/libnet/doc/html/index.html deleted file mode 100644 index 13391c0..0000000 --- a/libnet/doc/html/index.html +++ /dev/null @@ -1,17 +0,0 @@ - - -libnet: Libnet Packet Assembly Library - - - - -

Libnet Packet Assembly Library

-

-

1.1.1

-Overview

-Libnet is a high-level API (toolkit) allowing the application programmer to construct and inject network packets. It provides a portable and simplified interface for low-level network packet shaping, handling and injection. Libnet hides much of the tedium of packet creation from the application programmer such as multiplexing, buffer management, arcane packet header information, byte-ordering, OS-dependent issues, and much more. Libnet features portable packet creation interfaces at the IP layer and link layer, as well as a host of supplementary and complementary functionality. Using libnet, quick and simple packet assembly applications can be whipped up with little effort. With a bit more time, more complex programs can be written (Traceroute and ping were easily rewritten using libnet and libpcap).
Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-asn1_8h-source.html b/libnet/doc/html/libnet-asn1_8h-source.html deleted file mode 100644 index ddf6d2a..0000000 --- a/libnet/doc/html/libnet-asn1_8h-source.html +++ /dev/null @@ -1,268 +0,0 @@ - - -libnet: libnet-asn1.h Source File - - - - -

libnet-asn1.h

00001 /*
-00002  *  $Id: libnet-asn1.h,v 1.3 2004/01/17 07:51:19 mike Exp $
-00003  *
-00004  *  libnet-asn1.h - Network routine library ASN.1 header file
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  *  Definitions for Abstract Syntax Notation One, ASN.1
-00010  *  As defined in ISO/IS 8824 and ISO/IS 8825
-00011  *
-00012  *  Copyright 1988, 1989 by Carnegie Mellon University
-00013  *  All rights reserved.
-00014  *
-00015  *  Permission to use, copy, modify, and distribute this software and its
-00016  *  documentation for any purpose and without fee is hereby granted,
-00017  *  provided that the above copyright notice appear in all copies and that
-00018  *  both that copyright notice and this permission notice appear in
-00019  *  supporting documentation, and that the name of CMU not be
-00020  *  used in advertising or publicity pertaining to distribution of the
-00021  *  software without specific, written prior permission.
-00022  *
-00023  *  CMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
-00024  *  ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
-00025  *  CMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
-00026  *  ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
-00027  *  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
-00028  *  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
-00029  *  SOFTWARE.
-00030  *
-00031  *  Copyright (c) 1998 - 2001 Mike D. Schiffman <mike@infonexus.com>
-00032  *  All rights reserved.
-00033  *
-00034  * Redistribution and use in source and binary forms, with or without
-00035  * modification, are permitted provided that the following conditions
-00036  * are met:
-00037  * 1. Redistributions of source code must retain the above copyright
-00038  *    notice, this list of conditions and the following disclaimer.
-00039  * 2. Redistributions in binary form must reproduce the above copyright
-00040  *    notice, this list of conditions and the following disclaimer in the
-00041  *    documentation and/or other materials provided with the distribution.
-00042  *
-00043  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00044  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00045  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00046  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00047  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00048  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00049  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00050  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00051  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00052  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00053  * SUCH DAMAGE.
-00054  */
-00055 
-00056 #ifndef __LIBNET_ASN1_H
-00057 #define __LIBNET_ASN1_H
-00058 
-00059 #ifndef EIGHTBIT_SUBIDS
-00060 typedef u_int32_t  oid;
-00061 #define MAX_SUBID   0xFFFFFFFF
-00062 #else
-00063 typedef u_int8_t  oid;
-00064 #define MAX_SUBID   0xFF
-00065 #endif
-00066 
-00067 #define MAX_OID_LEN         64  /* max subid's in an oid */
-00068 
-00069 #define ASN_BOOLEAN         (0x01)
-00070 #define ASN_INTEGER         (0x02)
-00071 #define ASN_BIT_STR         (0x03)
-00072 #define ASN_OCTET_STR       (0x04)
-00073 #define ASN_NULL            (0x05)
-00074 #define ASN_OBJECT_ID       (0x06)
-00075 #define ASN_SEQUENCE        (0x10)
-00076 #define ASN_SET             (0x11)
-00077 
-00078 #define ASN_UNIVERSAL       (0x00)
-00079 #define ASN_APPLICATION     (0x40)
-00080 #define ASN_CONTEXT         (0x80)
-00081 #define ASN_PRIVATE         (0xC0)
-00082 
-00083 #define ASN_PRIMITIVE       (0x00)
-00084 #define ASN_CONSTRUCTOR     (0x20)
-00085 
-00086 #define ASN_LONG_LEN        (0x80)
-00087 #define ASN_EXTENSION_ID    (0x1F)
-00088 #define ASN_BIT8            (0x80)
-00089 
-00090 #define IS_CONSTRUCTOR(byte)  ((byte) & ASN_CONSTRUCTOR)
-00091 #define IS_EXTENSION_ID(byte) (((byte) & ASN_EXTENSION_ID) = ASN_EXTENSION_ID)
-00092 
-00093 /*
-00094  *  All of the build_asn1_* (build_asn1_length being an exception) functions
-00095  *  take the same first 3 arguments:
-00096  *
-00097  *  u_int8_t *data:   This is a pointer to the start of the data object to be
-00098  *                  manipulated.
-00099  *  int *datalen:   This is a pointer to the number of valid bytes following
-00100  *                  "data".  This should be not be exceeded in any function.
-00101  *                  Upon exiting a function, this value will reflect the
-00102  *                  changed "data" and then refer to the new number of valid
-00103  *                  bytes until the end of "data".
-00104  *  u_int8_t type:    The ASN.1 object type.
-00105  */
-00106 
-00107 
-00108 /*
-00109  *  Builds an ASN object containing an integer.
-00110  *
-00111  *  Returns NULL upon error or a pointer to the first byte past the end of
-00112  *  this object (the start of the next object).
-00113  */
-00114 
-00115 u_int8_t *
-00116 libnet_build_asn1_int(
-00117     u_int8_t *,           /* Pointer to the output buffer */
-00118     int *,              /* Number of valid bytes left in the buffer */
-00119     u_int8_t,             /* ASN object type */
-00120     int32_t *,             /* Pointer to a int32_t integer */
-00121     int                 /* Size of a int32_t integer */
-00122     );
-00123 
-00124 
-00125 /*
-00126  *  Builds an ASN object containing an unsigned integer.
-00127  *
-00128  *  Returns NULL upon error or a pointer to the first byte past the end of
-00129  *  this object (the start of the next object).
-00130  */
-00131 
-00132 u_int8_t *
-00133 libnet_build_asn1_uint(
-00134     u_int8_t *,           /* Pointer to the output buffer */
-00135     int *,              /* Number of valid bytes left in the buffer */
-00136     u_int8_t,             /* ASN object type */
-00137     u_int32_t *,           /* Pointer to an unsigned int32_t integer */
-00138     int                 /* Size of a int32_t integer */
-00139     );
-00140 
-00141 
-00142 /*
-00143  *  Builds an ASN object containing an octect string.
-00144  *
-00145  *  Returns NULL upon error or a pointer to the first byte past the end of
-00146  *  this object (the start of the next object).
-00147  */
-00148 
-00149 u_int8_t *
-00150 libnet_build_asn1_string(
-00151     u_int8_t *,           /* Pointer to the output buffer */
-00152     int *,              /* Number of valid bytes left in the buffer */
-00153     u_int8_t,             /* ASN object type */
-00154     u_int8_t *,           /* Pointer to a string to be built into an object */
-00155     int                 /* Size of the string */
-00156     );
-00157 
-00158 
-00159 /*
-00160  *  Builds an ASN header for an object with the ID and length specified.  This
-00161  *  only works on data types < 30, i.e. no extension octets.  The maximum
-00162  *  length is 0xFFFF;
-00163  *
-00164  *  Returns a pointer to the first byte of the contents of this object or
-00165  *  NULL upon error
-00166  */
-00167 
-00168 u_int8_t *
-00169 libnet_build_asn1_header(
-00170     u_int8_t *,       /* Pointer to the start of the object */
-00171     int *,          /* Number of valid bytes left in buffer */
-00172     u_int8_t,         /* ASN object type */
-00173     int             /* ASN object length */
-00174     );
-00175 
-00176 
-00177 u_int8_t *
-00178 libnet_build_asn1_length(
-00179     u_int8_t *,       /* Pointer to start of object */
-00180     int *,          /* Number of valid bytes in buffer */
-00181     int             /* Length of object */
-00182     );
-00183 
-00184 
-00185 /*
-00186  *  Builds an ASN header for a sequence with the ID and length specified.
-00187  *
-00188  *  This only works on data types < 30, i.e. no extension octets.
-00189  *  The maximum length is 0xFFFF;
-00190  *
-00191  *  Returns a pointer to the first byte of the contents of this object.
-00192  *  Returns NULL on any error.
-00193  */
-00194 
-00195 u_int8_t *
-00196 libnet_build_asn1_sequence(
-00197     u_int8_t *,
-00198     int *,
-00199     u_int8_t,
-00200     int
-00201     );
-00202 
-00203 
-00204 /*
-00205  *  Builds an ASN object identifier object containing the input string.
-00206  *
-00207  *  Returns NULL upon error or a pointer to the first byte past the end of
-00208  *  this object (the start of the next object).
-00209  */
-00210 
-00211 u_int8_t *
-00212 libnet_build_asn1_objid(
-00213     u_int8_t *,
-00214     int *,
-00215     u_int8_t,
-00216     oid *,
-00217     int
-00218     );
-00219 
-00220 
-00221 /*
-00222  *  Builds an ASN null object.
-00223  *
-00224  *  Returns NULL upon error or a pointer to the first byte past the end of
-00225  *  this object (the start of the next object).
-00226  */
-00227 
-00228 u_int8_t *
-00229 libnet_build_asn1_null(
-00230     u_int8_t *,
-00231     int *,
-00232     u_int8_t
-00233     );
-00234 
-00235 
-00236 /*
-00237  *  Builds an ASN bitstring.
-00238  *
-00239  *  Returns NULL upon error or a pointer to the first byte past the end of
-00240  *  this object (the start of the next object).
-00241  */
-00242 
-00243 u_int8_t *
-00244 libnet_build_asn1_bitstring(
-00245     u_int8_t *,
-00246     int *,
-00247     u_int8_t,
-00248     u_int8_t *,       /* Pointer to the input buffer */
-00249     int             /* Length of the input buffer */
-00250     );
-00251 
-00252 
-00253 #endif  /* __LIBNET_ASN1_H */
-00254 
-00255 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-functions_8h-source.html b/libnet/doc/html/libnet-functions_8h-source.html deleted file mode 100644 index e7b2151..0000000 --- a/libnet/doc/html/libnet-functions_8h-source.html +++ /dev/null @@ -1,742 +0,0 @@ - - -libnet: libnet-functions.h Source File - - - - -

libnet-functions.h

Go to the documentation of this file.
00001 /*
-00002  *  $Id: libnet-functions.h,v 1.39 2004/03/01 20:26:11 mike Exp $
-00003  *
-00004  *  libnet-functions.h - function prototypes
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  * 1. Redistributions of source code must retain the above copyright
-00013  *    notice, this list of conditions and the following disclaimer.
-00014  * 2. Redistributions in binary form must reproduce the above copyright
-00015  *    notice, this list of conditions and the following disclaimer in the
-00016  *    documentation and/or other materials provided with the distribution.
-00017  *
-00018  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00019  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00020  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00021  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00022  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00023  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00024  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00025  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00026  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00027  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00028  * SUCH DAMAGE.
-00029  *
-00030  */
-00031 
-00032 #ifndef __LIBNET_FUNCTIONS_H
-00033 #define __LIBNET_FUNCTIONS_H
-00034 
-00063 libnet_t *
-00064 libnet_init(int injection_type, char *device, char *err_buf);
-00065 
-00071 void
-00072 libnet_destroy(libnet_t *l);
-00073 
-00080 void
-00081 libnet_clear_packet(libnet_t *l);
-00082 
-00089 void
-00090 libnet_stats(libnet_t *l, struct libnet_stats *ls);
-00091 
-00097 int 
-00098 libnet_getfd(libnet_t *l);
-00099 
-00106 int8_t *
-00107 libnet_getdevice(libnet_t *l);
-00108 
-00117 u_int8_t *
-00118 libnet_getpbuf(libnet_t *l, libnet_ptag_t ptag);
-00119 
-00128 u_int32_t
-00129 libnet_getpbuf_size(libnet_t *l, libnet_ptag_t ptag);
-00130 
-00138 char *
-00139 libnet_geterror(libnet_t *l);
-00140 
-00147 u_int32_t
-00148 libnet_getpacket_size(libnet_t *l);
-00149 
-00155 int
-00156 libnet_seed_prand(libnet_t *l);
-00157 
-00171 u_int32_t
-00172 libnet_get_prand(int mod);
-00173 
-00195 int
-00196 libnet_toggle_checksum(libnet_t *l, libnet_ptag_t ptag, int mode);
-00197 
-00210 char *
-00211 libnet_addr2name4(u_int32_t in, u_int8_t use_name);
-00212 
-00226 u_int32_t
-00227 libnet_name2addr4(libnet_t *l, char *host_name, u_int8_t use_name);
-00228 
-00229 extern const struct libnet_in6_addr in6addr_error;
-00230 
-00244 struct libnet_in6_addr
-00245 libnet_name2addr6(libnet_t *l, char *host_name, u_int8_t use_name);
-00246 
-00250 void
-00251 libnet_addr2name6_r(struct libnet_in6_addr addr, u_int8_t use_name,
-00252 char *host_name, int host_name_len);
-00253 
-00269 int
-00270 libnet_plist_chain_new(libnet_t *l, libnet_plist_t **plist, char *token_list);
-00271 
-00283 int
-00284 libnet_plist_chain_next_pair(libnet_plist_t *plist, u_int16_t *bport, 
-00285 u_int16_t *eport); 
-00286 
-00293 int
-00294 libnet_plist_chain_dump(libnet_plist_t *plist);
-00295 
-00304 char *
-00305 libnet_plist_chain_dump_string(libnet_plist_t *plist);
-00306 
-00312 int
-00313 libnet_plist_chain_free(libnet_plist_t *plist);
-00314 
-00402 libnet_ptag_t
-00403 libnet_build_802_1q(u_int8_t *dst, u_int8_t *src, u_int16_t tpi,
-00404 u_int8_t priority, u_int8_t cfi, u_int16_t vlan_id, u_int16_t len_proto,
-00405 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00406 
-00418 libnet_ptag_t
-00419 libnet_build_802_1x(u_int8_t eap_ver, u_int8_t eap_type, u_int16_t length, 
-00420 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00421 
-00433 libnet_ptag_t
-00434 libnet_build_802_2(u_int8_t dsap, u_int8_t ssap, u_int8_t control,
-00435 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00436 
-00450 libnet_ptag_t
-00451 libnet_build_802_2snap(u_int8_t dsap, u_int8_t ssap, u_int8_t control, 
-00452 u_int8_t *oui, u_int16_t type, u_int8_t *payload, u_int32_t payload_s,
-00453 libnet_t *l, libnet_ptag_t ptag); 
-00454 
-00470 libnet_ptag_t
-00471 libnet_build_802_3(u_int8_t *dst, u_int8_t *src, u_int16_t len, 
-00472 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00473 
-00489 libnet_ptag_t
-00490 libnet_build_ethernet(u_int8_t *dst, u_int8_t *src, u_int16_t type, 
-00491 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00492 
-00504 libnet_ptag_t
-00505 libnet_autobuild_ethernet(u_int8_t *dst, u_int16_t type, libnet_t *l);
-00506 
-00523 libnet_ptag_t
-00524 libnet_build_fddi(u_int8_t fc, u_int8_t *dst, u_int8_t *src, u_int8_t dsap,
-00525 u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, u_int8_t *payload,
-00526 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00527 
-00540 libnet_ptag_t
-00541 libnet_autobuild_fddi(u_int8_t fc, u_int8_t *dst, u_int8_t dsap, u_int8_t ssap,
-00542 u_int8_t cf, u_int8_t *org, u_int16_t type, libnet_t *l);
-00543 
-00563 libnet_ptag_t
-00564 libnet_build_arp(u_int16_t hrd, u_int16_t pro, u_int8_t hln, u_int8_t pln,
-00565 u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, u_int8_t *tpa,
-00566 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00567 
-00580 libnet_ptag_t
-00581 libnet_autobuild_arp(u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha,
-00582 u_int8_t *tpa, libnet_t *l);
-00583 
-00600 libnet_ptag_t
-00601 libnet_build_tcp(u_int16_t sp, u_int16_t dp, u_int32_t seq, u_int32_t ack,
-00602 u_int8_t control, u_int16_t win, u_int16_t sum, u_int16_t urg, u_int16_t len, 
-00603 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00604 
-00620 libnet_ptag_t
-00621 libnet_build_tcp_options(u_int8_t *options, u_int32_t options_s, libnet_t *l,
-00622 libnet_ptag_t ptag);
-00623 
-00636 libnet_ptag_t
-00637 libnet_build_udp(u_int16_t sp, u_int16_t dp, u_int16_t len, u_int16_t sum,
-00638 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00639 
-00659 libnet_ptag_t
-00660 libnet_build_cdp(u_int8_t version, u_int8_t ttl, u_int16_t sum, u_int16_t type,
-00661 u_int16_t len, u_int8_t *value, u_int8_t *payload, u_int32_t payload_s,
-00662 libnet_t *l, libnet_ptag_t ptag);
-00663 
-00678 libnet_ptag_t
-00679 libnet_build_icmpv4_echo(u_int8_t type, u_int8_t code, u_int16_t sum,
-00680 u_int16_t id, u_int16_t seq, u_int8_t *payload, u_int32_t payload_s,
-00681 libnet_t *l, libnet_ptag_t ptag);
-00682 
-00698 libnet_ptag_t
-00699 libnet_build_icmpv4_mask(u_int8_t type, u_int8_t code, u_int16_t sum,
-00700 u_int16_t id, u_int16_t seq, u_int32_t mask, u_int8_t *payload,
-00701 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00702 
-00725 libnet_ptag_t
-00726 libnet_build_icmpv4_unreach(u_int8_t type, u_int8_t code, u_int16_t sum,
-00727 u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag,
-00728 u_int8_t orig_ttl, u_int8_t orig_prot,  u_int16_t orig_check, 
-00729 u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s,
-00730 libnet_t *l, libnet_ptag_t ptag);
-00731 
-00753 libnet_ptag_t
-00754 libnet_build_icmpv4_redirect(u_int8_t type, u_int8_t code, u_int16_t sum,
-00755 u_int32_t gateway, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id,
-00756 u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot,
-00757 u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst,
-00758 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00759 
-00783 libnet_ptag_t
-00784 libnet_build_icmpv4_timeexceed(u_int8_t type, u_int8_t code, u_int16_t sum,
-00785 u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag,
-00786 u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check,
-00787 u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s,
-00788 libnet_t *l, libnet_ptag_t ptag);
-00789 
-00807 libnet_ptag_t
-00808 libnet_build_icmpv4_timestamp(u_int8_t type, u_int8_t code, u_int16_t sum,
-00809 u_int16_t id, u_int16_t seq, n_time otime, n_time rtime, n_time ttime,
-00810 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00811 
-00824 libnet_ptag_t
-00825 libnet_build_igmp(u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t ip,
-00826 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00827 
-00845 libnet_ptag_t 
-00846 libnet_build_ipv4(u_int16_t len, u_int8_t tos, u_int16_t id, u_int16_t frag,
-00847 u_int8_t ttl, u_int8_t prot, u_int16_t sum, u_int32_t src, u_int32_t dst,
-00848 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00849 
-00864 libnet_ptag_t 
-00865 libnet_build_ipv4_options(u_int8_t *options, u_int32_t options_s, libnet_t *l,
-00866 libnet_ptag_t ptag);
-00867 
-00880 libnet_ptag_t
-00881 libnet_autobuild_ipv4(u_int16_t len, u_int8_t prot, u_int32_t dst, libnet_t *l);
-00882 
-00898 libnet_ptag_t
-00899 libnet_build_ipv6(u_int8_t tc, u_int32_t fl, u_int16_t len, u_int8_t nh,
-00900 u_int8_t hl, struct libnet_in6_addr src, struct libnet_in6_addr dst, 
-00901 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00902 
-00915 libnet_ptag_t
-00916 libnet_build_ipv6_frag(u_int8_t nh, u_int8_t reserved, u_int16_t frag,
-00917 u_int32_t id, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-00918 libnet_ptag_t ptag);
-00919 
-00937 libnet_ptag_t
-00938 libnet_build_ipv6_routing(u_int8_t nh, u_int8_t len, u_int8_t rtype,
-00939 u_int8_t segments, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-00940 libnet_ptag_t ptag);
-00941 
-00955 libnet_ptag_t
-00956 libnet_build_ipv6_destopts(u_int8_t nh, u_int8_t len, u_int8_t *payload,
-00957 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00958 
-00973 libnet_ptag_t
-00974 libnet_build_ipv6_hbhopts(u_int8_t nh, u_int8_t len, u_int8_t *payload,
-00975 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-00976 
-00988 libnet_ptag_t
-00989 libnet_autobuild_ipv6(u_int16_t len, u_int8_t nh, struct libnet_in6_addr dst,
-00990 libnet_t *l);
-00991 
-01009 libnet_ptag_t
-01010 libnet_build_isl(u_int8_t *dhost, u_int8_t type, u_int8_t user, u_int8_t *shost,
-01011 u_int16_t len, u_int8_t *snap, u_int16_t vid, u_int16_t index,
-01012 u_int16_t reserved, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01013 libnet_ptag_t ptag);
-01014 
-01026 libnet_ptag_t
-01027 libnet_build_ipsec_esp_hdr(u_int32_t spi, u_int32_t seq, u_int32_t iv,
-01028 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01029 
-01041 libnet_ptag_t
-01042 libnet_build_ipsec_esp_ftr(u_int8_t len, u_int8_t nh, int8_t *auth,
-01043 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01044 
-01059 libnet_ptag_t
-01060 libnet_build_ipsec_ah(u_int8_t nh, u_int8_t len, u_int16_t res,
-01061 u_int32_t spi, u_int32_t seq, u_int32_t auth, u_int8_t *payload,
-01062 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01063 
-01079 libnet_ptag_t
-01080 libnet_build_dnsv4(u_int16_t h_len, u_int16_t id, u_int16_t flags,
-01081 u_int16_t num_q, u_int16_t num_anws_rr, u_int16_t num_auth_rr,
-01082 u_int16_t num_addi_rr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01083 libnet_ptag_t ptag);
-01084 
-01102 libnet_ptag_t
-01103 libnet_build_rip(u_int8_t cmd, u_int8_t version, u_int16_t rd, u_int16_t af,
-01104 u_int16_t rt, u_int32_t addr, u_int32_t mask, u_int32_t next_hop,
-01105 u_int32_t metric, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01106 libnet_ptag_t ptag);
-01107 
-01130 libnet_ptag_t
-01131 libnet_build_rpc_call(u_int32_t rm, u_int32_t xid, u_int32_t prog_num,
-01132 u_int32_t prog_vers, u_int32_t procedure, u_int32_t cflavor, u_int32_t clength,
-01133 u_int8_t *cdata, u_int32_t vflavor, u_int32_t vlength, u_int8_t *vdata,
-01134 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01135 
-01158 libnet_ptag_t
-01159 libnet_build_stp_conf(u_int16_t id, u_int8_t version, u_int8_t bpdu_type,
-01160 u_int8_t flags, u_int8_t *root_id, u_int32_t root_pc, u_int8_t *bridge_id,
-01161 u_int16_t port_id, u_int16_t message_age, u_int16_t max_age, 
-01162 u_int16_t hello_time, u_int16_t f_delay, u_int8_t *payload,
-01163 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01164 
-01178 libnet_ptag_t
-01179 libnet_build_stp_tcn(u_int16_t id, u_int8_t version, u_int8_t bpdu_type,
-01180 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01181 
-01199 libnet_ptag_t
-01200 libnet_build_token_ring(u_int8_t ac, u_int8_t fc, u_int8_t *dst, u_int8_t *src,
-01201 u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type,
-01202 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01203 
-01217 libnet_ptag_t
-01218 libnet_autobuild_token_ring(u_int8_t ac, u_int8_t fc, u_int8_t *dst, 
-01219 u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type,
-01220 libnet_t *l);
-01221 
-01241 libnet_ptag_t
-01242 libnet_build_vrrp(u_int8_t version, u_int8_t type, u_int8_t vrouter_id,
-01243 u_int8_t priority, u_int8_t ip_count, u_int8_t auth_type, u_int8_t advert_int,
-01244 u_int16_t sum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01245 libnet_ptag_t ptag);
-01246 
-01259 libnet_ptag_t
-01260 libnet_build_mpls(u_int32_t label, u_int8_t experimental, u_int8_t bos,
-01261 u_int8_t ttl, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01262 libnet_ptag_t ptag);
-01263 
-01291 libnet_ptag_t
-01292 libnet_build_ntp(u_int8_t leap_indicator, u_int8_t version, u_int8_t mode,
-01293 u_int8_t stratum, u_int8_t poll, u_int8_t precision, u_int16_t delay_int,
-01294 u_int16_t delay_frac, u_int16_t dispersion_int, u_int16_t dispersion_frac,
-01295 u_int32_t reference_id, u_int32_t ref_ts_int, u_int32_t ref_ts_frac,
-01296 u_int32_t orig_ts_int, u_int32_t orig_ts_frac, u_int32_t rec_ts_int,
-01297 u_int32_t rec_ts_frac, u_int32_t xmt_ts_int, u_int32_t xmt_ts_frac,
-01298 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01299 
-01307 libnet_ptag_t
-01308 libnet_build_ospfv2(u_int16_t len, u_int8_t type, u_int32_t rtr_id,
-01309 u_int32_t area_id, u_int16_t sum, u_int16_t autype, u_int8_t *payload,
-01310 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01311 
-01319 libnet_ptag_t
-01320 libnet_build_ospfv2_hello(u_int32_t netmask, u_int16_t interval, u_int8_t opts,
-01321 u_int8_t priority, u_int dead_int, u_int32_t des_rtr, u_int32_t bkup_rtr,
-01322 u_int32_t neighbor, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01323 libnet_ptag_t ptag);
-01324  
-01332 libnet_ptag_t
-01333 libnet_build_ospfv2_dbd(u_int16_t dgram_len, u_int8_t opts, u_int8_t type,
-01334 u_int seqnum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01335 libnet_ptag_t ptag);
-01336  
-01344 libnet_ptag_t
-01345 libnet_build_ospfv2_lsr(u_int type, u_int lsid, u_int32_t advrtr,
-01346 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01347  
-01355 libnet_ptag_t
-01356 libnet_build_ospfv2_lsu(u_int num, u_int8_t *payload, u_int32_t payload_s,
-01357 libnet_t *l, libnet_ptag_t ptag);
-01358 
-01366 libnet_ptag_t
-01367 libnet_build_ospfv2_lsa(u_int16_t age, u_int8_t opts, u_int8_t type,
-01368 u_int lsid, u_int32_t advrtr, u_int seqnum, u_int16_t sum, u_int16_t len,
-01369 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01370  
-01378 libnet_ptag_t
-01379 libnet_build_ospfv2_lsa_rtr(u_int16_t flags, u_int16_t num, u_int id,
-01380 u_int data, u_int8_t type, u_int8_t tos, u_int16_t metric, u_int8_t *payload,
-01381 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01382  
-01390 libnet_ptag_t
-01391 libnet_build_ospfv2_lsa_net(u_int32_t nmask, u_int rtrid, u_int8_t *payload,
-01392 u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01393  
-01401 libnet_ptag_t
-01402 libnet_build_ospfv2_lsa_sum(u_int32_t nmask, u_int metric, u_int tos,
-01403 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01404  
-01412 libnet_ptag_t
-01413 libnet_build_ospfv2_lsa_as(u_int32_t nmask, u_int metric, u_int32_t fwdaddr,
-01414 u_int tag, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01415 libnet_ptag_t ptag);
-01416 
-01427 libnet_ptag_t
-01428 libnet_build_data(u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01429 libnet_ptag_t ptag);
-01430 
-01438 libnet_ptag_t
-01439 libnet_build_dhcpv4(u_int8_t opcode, u_int8_t htype, u_int8_t hlen,
-01440 u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags,
-01441 u_int32_t cip, u_int32_t yip,  u_int32_t sip, u_int32_t gip, u_int8_t *chaddr,
-01442 u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, 
-01443 libnet_t *l, libnet_ptag_t ptag);
-01444 
-01452 libnet_ptag_t
-01453 libnet_build_bootpv4(u_int8_t opcode, u_int8_t htype, u_int8_t hlen,
-01454 u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags,
-01455 u_int32_t cip, u_int32_t yip,  u_int32_t sip, u_int32_t gip, u_int8_t *chaddr,
-01456 u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, 
-01457 libnet_t *l, libnet_ptag_t ptag);
-01458 
-01466 inline u_int32_t
-01467 libnet_getgre_length(u_int16_t fv);
-01468 
-01490 libnet_ptag_t
-01491 libnet_build_gre(u_int16_t fv, u_int16_t type, u_int16_t sum,
-01492 u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len,
-01493 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01494 
-01516 libnet_ptag_t
-01517 libnet_build_egre(u_int16_t fv, u_int16_t type, u_int16_t sum,
-01518 u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len,
-01519 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01520 
-01528 libnet_ptag_t
-01529 libnet_build_gre_sre(u_int16_t af, u_int8_t offset, u_int8_t length,
-01530 u_int8_t *routing, u_int8_t *payload, u_int32_t payload_s, libnet_t *l,
-01531 libnet_ptag_t ptag);
-01532 
-01540 libnet_ptag_t
-01541 libnet_build_gre_last_sre(libnet_t *l, libnet_ptag_t ptag);
-01542 
-01564 libnet_ptag_t
-01565 libnet_build_bgp4_header(u_int8_t marker[LIBNET_BGP4_MARKER_SIZE],
-01566 u_int16_t len, u_int8_t type, u_int8_t *payload, u_int32_t payload_s,
-01567 libnet_t *l, libnet_ptag_t ptag);
-01568 
-01585 libnet_ptag_t
-01586 libnet_build_bgp4_open(u_int8_t version, u_int16_t src_as, u_int16_t hold_time,
-01587 u_int32_t bgp_id, u_int8_t opt_len, u_int8_t *payload, u_int32_t payload_s,
-01588 libnet_t *l, libnet_ptag_t ptag);
-01589 
-01605 libnet_ptag_t
-01606 libnet_build_bgp4_update(u_int16_t unfeasible_rt_len, u_int8_t *withdrawn_rt,
-01607 u_int16_t total_path_attr_len, u_int8_t *path_attributes, u_int16_t info_len,
-01608 u_int8_t *reachability_info, u_int8_t *payload, u_int32_t payload_s,
-01609 libnet_t *l, libnet_ptag_t ptag);
-01610 
-01623 libnet_ptag_t
-01624 libnet_build_bgp4_notification(u_int8_t err_code, u_int8_t err_subcode,
-01625 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01626 
-01649 libnet_ptag_t
-01650 libnet_build_sebek(u_int32_t magic, u_int16_t version, u_int16_t type, 
-01651 u_int32_t counter, u_int32_t time_sec, u_int32_t time_usec, u_int32_t pid,
-01652 u_int32_t uid, u_int32_t fd, u_int8_t cmd[SEBEK_CMD_LENGTH], u_int32_t length, 
-01653 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01654 
-01669 libnet_ptag_t
-01670 libnet_build_link(u_int8_t *dst, u_int8_t *src, u_int8_t *oui, u_int16_t type, 
-01671 u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag);
-01672 
-01683 libnet_ptag_t
-01684 libnet_autobuild_link(u_int8_t *dst, u_int8_t *oui, u_int16_t type,
-01685 libnet_t *l);
-01686 
-01699 int
-01700 libnet_write(libnet_t *l);
-01701 
-01711 u_int32_t
-01712 libnet_get_ipaddr4(libnet_t *l);
-01713 
-01719 struct libnet_in6_addr
-01720 libnet_get_ipaddr6(libnet_t *l);
-01721 
-01730 struct libnet_ether_addr *
-01731 libnet_get_hwaddr(libnet_t *l);
-01732 
-01742 u_int8_t *
-01743 libnet_hex_aton(int8_t *s, int *len);
-01744 
-01760 int
-01761 libnet_adv_cull_packet(libnet_t *l, u_int8_t **packet, u_int32_t *packet_s);
-01762 
-01775 int
-01776 libnet_adv_cull_header(libnet_t *l, libnet_ptag_t ptag, u_int8_t **header,
-01777 u_int32_t *header_s);
-01778 
-01792 int
-01793 libnet_adv_write_link(libnet_t *l, u_int8_t *packet, u_int32_t packet_s);
-01794 
-01801 void
-01802 libnet_adv_free_packet(libnet_t *l, u_int8_t *packet);
-01803 
-01817 int 
-01818 libnet_cq_add(libnet_t *l, char *label);
-01819 
-01834 libnet_t *
-01835 libnet_cq_remove(libnet_t *l);
-01836 
-01848 libnet_t *
-01849 libnet_cq_remove_by_label(char *label);
-01850  
-01857 int8_t *
-01858 libnet_cq_getlabel(libnet_t *l);
-01859  
-01866 libnet_t *
-01867 libnet_cq_find_by_label(char *label);
-01868   
-01874 void
-01875 libnet_cq_destroy();
-01876 
-01896 libnet_t *
-01897 libnet_cq_head();
-01898 
-01904 int
-01905 libnet_cq_last();
-01906 
-01912 libnet_t *
-01913 libnet_cq_next();
-01914 
-01920 u_int32_t
-01921 libnet_cq_size();
-01922 
-01928 void
-01929 libnet_diag_dump_context(libnet_t *l);
-01930 
-01936 void
-01937 libnet_diag_dump_pblock(libnet_t *l);
-01938 
-01945 char *
-01946 libnet_diag_dump_pblock_type(u_int8_t type);
-01947 
-01959 void
-01960 libnet_diag_dump_hex(u_int8_t *packet, u_int32_t len, int swap, FILE *stream);
-01961 
-01962 /*
-01963  * [Internal] 
-01964  */
-01965 int
-01966 libnet_write_raw_ipv4(libnet_t *l, u_int8_t *packet, u_int32_t size);
-01967 
-01968 /*
-01969  * [Internal] 
-01970  */
-01971 int
-01972 libnet_write_raw_ipv6(libnet_t *l, u_int8_t *packet, u_int32_t size);
-01973 
-01974 /*
-01975  * [Internal] 
-01976  */
-01977 int
-01978 libnet_write_link(libnet_t *l, u_int8_t *packet, u_int32_t size);
-01979 
-01980 #if ((__WIN32__) && !(__CYGWIN__))
-01981 /*
-01982  * [Internal] 
-01983  */
-01984 SOCKET
-01985 libnet_open_raw4(libnet_t *l);
-01986 #else
-01987 /*
-01988  * [Internal] 
-01989  */
-01990 int
-01991 libnet_open_raw4(libnet_t *l);
-01992 #endif
-01993 
-01994 /*
-01995  * [Internal] 
-01996  */
-01997 int
-01998 libnet_close_raw4(libnet_t *l);
-01999 
-02000 /*
-02001  * [Internal] 
-02002  */
-02003 int
-02004 libnet_open_raw6(libnet_t *l);
-02005        
-02006 /*
-02007  * [Internal] 
-02008  */
-02009 int
-02010 libnet_close_raw6(libnet_t *l);
-02011 
-02012 /*
-02013  * [Internal] 
-02014  */
-02015 int
-02016 libnet_select_device(libnet_t *l);
-02017 
-02018 /*
-02019  * [Internal] 
-02020  */
-02021 int
-02022 libnet_open_link(libnet_t *l);
-02023 
-02024 /*
-02025  * [Internal] 
-02026  */
-02027 int
-02028 libnet_close_link(libnet_t *l);
-02029 
-02030 /*
-02031  * [Internal] 
-02032  */
-02033 int
-02034 libnet_do_checksum(libnet_t *l, u_int8_t *packet, int protocol, int len);
-02035 
-02036 /*
-02037  * [Internal] 
-02038  */
-02039 u_int32_t
-02040 libnet_compute_crc(u_int8_t *buf, u_int32_t len);
-02041 
-02042 /*
-02043  * [Internal] 
-02044  */
-02045 u_int16_t
-02046 libnet_ip_check(u_int16_t *addr, int len);
-02047 
-02048 /*
-02049  * [Internal] 
-02050  */
-02051 int
-02052 libnet_in_cksum(u_int16_t *addr, int len);
-02053 
-02054 /*
-02055  * [Internal] 
-02056  * If ptag is 0, function will create a pblock for the protocol unit type,
-02057  * append it to the list and return a pointer to it.  If ptag is not 0,
-02058  * function will search the pblock list for the specified protocol block 
-02059  * and return a pointer to it.
-02060  */
-02061 libnet_pblock_t *
-02062 libnet_pblock_probe(libnet_t *l, libnet_ptag_t ptag, u_int32_t n, 
-02063 u_int8_t type);
-02064 
-02065 /*
-02066  * [Internal] 
-02067  * Function creates the pblock list if l->protocol_blocks == NULL or appends
-02068  * an entry to the doubly linked list.
-02069  */
-02070 libnet_pblock_t *
-02071 libnet_pblock_new(libnet_t *l, u_int32_t size);
-02072 
-02073 /*
-02074  * [Internal] 
-02075  * Function swaps two pblocks in memory.
-02076  */
-02077 int
-02078 libnet_pblock_swap(libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2);
-02079 
-02080 /*
-02081  * [Internal] 
-02082  * Function inserts a pblock into the doubly linked list.
-02083  */
-02084 int
-02085 libnet_pblock_insert_before(libnet_t *l, libnet_ptag_t ptag1,
-02086 libnet_ptag_t ptag2);
-02087 
-02088 /*
-02089  * [Internal] 
-02090  * Function removes a pblock from context 
-02091  */
-02092 void
-02093 libnet_pblock_delete(libnet_t *l, libnet_pblock_t *p);
-02094 
-02095 /*
-02096  * [Internal] 
-02097  * Function updates the pblock meta-inforation.  Internally it updates the
-02098  * ptag with a monotonically increasing variable kept in l.  This way each
-02099  * pblock has a succesively increasing ptag identifier.
-02100  */
-02101 libnet_ptag_t
-02102 libnet_pblock_update(libnet_t *l, libnet_pblock_t *p, u_int32_t h, 
-02103 u_int8_t type);
-02104 
-02105 /*
-02106  * [Internal] 
-02107  * Function locates a given block by it's ptag. 
-02108  */
-02109 libnet_pblock_t *
-02110 libnet_pblock_find(libnet_t *l, libnet_ptag_t ptag);
-02111 
-02112 /*
-02113  * [Internal] 
-02114  * Function copies protocol block data over.
-02115  */
-02116 int
-02117 libnet_pblock_append(libnet_t *l, libnet_pblock_t *p, u_int8_t *buf,
-02118 u_int32_t len);
-02119 
-02120 /*
-02121  * [Internal] 
-02122  * Function sets pblock flags.
-02123  */
-02124 void
-02125 libnet_pblock_setflags(libnet_pblock_t *p, u_int8_t flags);
-02126 
-02127 /*
-02128  * [Internal] 
-02129  * Function returns the protocol number for the protocol block type.  If
-02130  * the type is unknown, the function defaults to returning IPPROTO_IP.
-02131  */
-02132 int
-02133 libnet_pblock_p2p(u_int8_t type);
-02134 
-02135 /*
-02136  * [Internal] 
-02137  * Function assembles the packet for subsequent writing.  Function makes two
-02138  * passes through the pblock list:
-02139  */
-02140 int
-02141 libnet_pblock_coalesce(libnet_t *l, u_int8_t **packet, u_int32_t *size);
-02142 
-02143 #if !(__WIN32__)
-02144 /*
-02145  * [Internal] 
-02146  * By testing if we can retrieve the FLAGS of an iface
-02147  * we can know if it exists or not and if it is up.
-02148  */
-02149 int
-02150 libnet_check_iface(libnet_t *l);
-02151 #endif
-02152 
-02153 #if defined(__WIN32__)
-02154 /*
-02155  * [Internal] 
-02156  */
-02157 BYTE *
-02158 libnet_win32_get_remote_mac(libnet_t *l, DWORD IP);
-02159 
-02160 /*
-02161  * [Internal] 
-02162  */
-02163 int
-02164 libnet_close_link_interface(libnet_t *l);
-02165 
-02166 /*
-02167  * [Internal] 
-02168  */
-02169 BYTE * 
-02170 libnet_win32_read_arp_table(DWORD IP);
-02171 #endif
-02172 #endif  /* __LIBNET_FUNCTIONS_H */
-02173 
-02174 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-functions_8h.html b/libnet/doc/html/libnet-functions_8h.html deleted file mode 100644 index a3d37d3..0000000 --- a/libnet/doc/html/libnet-functions_8h.html +++ /dev/null @@ -1,8844 +0,0 @@ - - -libnet: libnet-functions.h File Reference - - - - -

libnet-functions.h File Reference

libnet exported function prototypes -More... -

- -

-Go to the source code of this file. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Functions

libnet_t * libnet_init (int injection_type, char *device, char *err_buf)
void libnet_destroy (libnet_t *l)
void libnet_clear_packet (libnet_t *l)
void libnet_stats (libnet_t *l, struct libnet_stats *ls)
int libnet_getfd (libnet_t *l)
int8_t * libnet_getdevice (libnet_t *l)
u_int8_t * libnet_getpbuf (libnet_t *l, libnet_ptag_t ptag)
u_int32_t libnet_getpbuf_size (libnet_t *l, libnet_ptag_t ptag)
char * libnet_geterror (libnet_t *l)
u_int32_t libnet_getpacket_size (libnet_t *l)
int libnet_seed_prand (libnet_t *l)
u_int32_t libnet_get_prand (int mod)
int libnet_toggle_checksum (libnet_t *l, libnet_ptag_t ptag, int mode)
char * libnet_addr2name4 (u_int32_t in, u_int8_t use_name)
u_int32_t libnet_name2addr4 (libnet_t *l, char *host_name, u_int8_t use_name)
libnet_in6_addr libnet_name2addr6 (libnet_t *l, char *host_name, u_int8_t use_name)
void libnet_addr2name6_r (struct libnet_in6_addr addr, u_int8_t use_name, char *host_name, int host_name_len)
int libnet_plist_chain_new (libnet_t *l, libnet_plist_t **plist, char *token_list)
int libnet_plist_chain_next_pair (libnet_plist_t *plist, u_int16_t *bport, u_int16_t *eport)
int libnet_plist_chain_dump (libnet_plist_t *plist)
char * libnet_plist_chain_dump_string (libnet_plist_t *plist)
int libnet_plist_chain_free (libnet_plist_t *plist)
libnet_ptag_t libnet_build_802_1q (u_int8_t *dst, u_int8_t *src, u_int16_t tpi, u_int8_t priority, u_int8_t cfi, u_int16_t vlan_id, u_int16_t len_proto, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_802_1x (u_int8_t eap_ver, u_int8_t eap_type, u_int16_t length, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_802_2 (u_int8_t dsap, u_int8_t ssap, u_int8_t control, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_802_2snap (u_int8_t dsap, u_int8_t ssap, u_int8_t control, u_int8_t *oui, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_802_3 (u_int8_t *dst, u_int8_t *src, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ethernet (u_int8_t *dst, u_int8_t *src, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_ethernet (u_int8_t *dst, u_int16_t type, libnet_t *l)
libnet_ptag_t libnet_build_fddi (u_int8_t fc, u_int8_t *dst, u_int8_t *src, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_fddi (u_int8_t fc, u_int8_t *dst, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, libnet_t *l)
libnet_ptag_t libnet_build_arp (u_int16_t hrd, u_int16_t pro, u_int8_t hln, u_int8_t pln, u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, u_int8_t *tpa, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_arp (u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, u_int8_t *tpa, libnet_t *l)
libnet_ptag_t libnet_build_tcp (u_int16_t sp, u_int16_t dp, u_int32_t seq, u_int32_t ack, u_int8_t control, u_int16_t win, u_int16_t sum, u_int16_t urg, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_tcp_options (u_int8_t *options, u_int32_t options_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_udp (u_int16_t sp, u_int16_t dp, u_int16_t len, u_int16_t sum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_cdp (u_int8_t version, u_int8_t ttl, u_int16_t sum, u_int16_t type, u_int16_t len, u_int8_t *value, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_icmpv4_echo (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_icmpv4_mask (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, u_int32_t mask, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_icmpv4_unreach (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_icmpv4_redirect (u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t gateway, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_icmpv4_timeexceed (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_icmpv4_timestamp (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, n_time otime, n_time rtime, n_time ttime, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_igmp (u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t ip, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipv4 (u_int16_t len, u_int8_t tos, u_int16_t id, u_int16_t frag, u_int8_t ttl, u_int8_t prot, u_int16_t sum, u_int32_t src, u_int32_t dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipv4_options (u_int8_t *options, u_int32_t options_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_ipv4 (u_int16_t len, u_int8_t prot, u_int32_t dst, libnet_t *l)
libnet_ptag_t libnet_build_ipv6 (u_int8_t tc, u_int32_t fl, u_int16_t len, u_int8_t nh, u_int8_t hl, struct libnet_in6_addr src, struct libnet_in6_addr dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipv6_frag (u_int8_t nh, u_int8_t reserved, u_int16_t frag, u_int32_t id, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipv6_routing (u_int8_t nh, u_int8_t len, u_int8_t rtype, u_int8_t segments, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipv6_destopts (u_int8_t nh, u_int8_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipv6_hbhopts (u_int8_t nh, u_int8_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_ipv6 (u_int16_t len, u_int8_t nh, struct libnet_in6_addr dst, libnet_t *l)
libnet_ptag_t libnet_build_isl (u_int8_t *dhost, u_int8_t type, u_int8_t user, u_int8_t *shost, u_int16_t len, u_int8_t *snap, u_int16_t vid, u_int16_t index, u_int16_t reserved, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipsec_esp_hdr (u_int32_t spi, u_int32_t seq, u_int32_t iv, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipsec_esp_ftr (u_int8_t len, u_int8_t nh, int8_t *auth, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ipsec_ah (u_int8_t nh, u_int8_t len, u_int16_t res, u_int32_t spi, u_int32_t seq, u_int32_t auth, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_dnsv4 (u_int16_t h_len, u_int16_t id, u_int16_t flags, u_int16_t num_q, u_int16_t num_anws_rr, u_int16_t num_auth_rr, u_int16_t num_addi_rr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_rip (u_int8_t cmd, u_int8_t version, u_int16_t rd, u_int16_t af, u_int16_t rt, u_int32_t addr, u_int32_t mask, u_int32_t next_hop, u_int32_t metric, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_rpc_call (u_int32_t rm, u_int32_t xid, u_int32_t prog_num, u_int32_t prog_vers, u_int32_t procedure, u_int32_t cflavor, u_int32_t clength, u_int8_t *cdata, u_int32_t vflavor, u_int32_t vlength, u_int8_t *vdata, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_stp_conf (u_int16_t id, u_int8_t version, u_int8_t bpdu_type, u_int8_t flags, u_int8_t *root_id, u_int32_t root_pc, u_int8_t *bridge_id, u_int16_t port_id, u_int16_t message_age, u_int16_t max_age, u_int16_t hello_time, u_int16_t f_delay, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_stp_tcn (u_int16_t id, u_int8_t version, u_int8_t bpdu_type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_token_ring (u_int8_t ac, u_int8_t fc, u_int8_t *dst, u_int8_t *src, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_token_ring (u_int8_t ac, u_int8_t fc, u_int8_t *dst, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, libnet_t *l)
libnet_ptag_t libnet_build_vrrp (u_int8_t version, u_int8_t type, u_int8_t vrouter_id, u_int8_t priority, u_int8_t ip_count, u_int8_t auth_type, u_int8_t advert_int, u_int16_t sum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_mpls (u_int32_t label, u_int8_t experimental, u_int8_t bos, u_int8_t ttl, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ntp (u_int8_t leap_indicator, u_int8_t version, u_int8_t mode, u_int8_t stratum, u_int8_t poll, u_int8_t precision, u_int16_t delay_int, u_int16_t delay_frac, u_int16_t dispersion_int, u_int16_t dispersion_frac, u_int32_t reference_id, u_int32_t ref_ts_int, u_int32_t ref_ts_frac, u_int32_t orig_ts_int, u_int32_t orig_ts_frac, u_int32_t rec_ts_int, u_int32_t rec_ts_frac, u_int32_t xmt_ts_int, u_int32_t xmt_ts_frac, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2 (u_int16_t len, u_int8_t type, u_int32_t rtr_id, u_int32_t area_id, u_int16_t sum, u_int16_t autype, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_hello (u_int32_t netmask, u_int16_t interval, u_int8_t opts, u_int8_t priority, u_int dead_int, u_int32_t des_rtr, u_int32_t bkup_rtr, u_int32_t neighbor, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_dbd (u_int16_t dgram_len, u_int8_t opts, u_int8_t type, u_int seqnum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsr (u_int type, u_int lsid, u_int32_t advrtr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsu (u_int num, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsa (u_int16_t age, u_int8_t opts, u_int8_t type, u_int lsid, u_int32_t advrtr, u_int seqnum, u_int16_t sum, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsa_rtr (u_int16_t flags, u_int16_t num, u_int id, u_int data, u_int8_t type, u_int8_t tos, u_int16_t metric, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsa_net (u_int32_t nmask, u_int rtrid, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsa_sum (u_int32_t nmask, u_int metric, u_int tos, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_ospfv2_lsa_as (u_int32_t nmask, u_int metric, u_int32_t fwdaddr, u_int tag, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_data (u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_dhcpv4 (u_int8_t opcode, u_int8_t htype, u_int8_t hlen, u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t *chaddr, u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_bootpv4 (u_int8_t opcode, u_int8_t htype, u_int8_t hlen, u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t *chaddr, u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
u_int32_t libnet_getgre_length (u_int16_t fv)
libnet_ptag_t libnet_build_gre (u_int16_t fv, u_int16_t type, u_int16_t sum, u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_egre (u_int16_t fv, u_int16_t type, u_int16_t sum, u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_gre_sre (u_int16_t af, u_int8_t offset, u_int8_t length, u_int8_t *routing, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_gre_last_sre (libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_bgp4_header (u_int8_t marker[LIBNET_BGP4_MARKER_SIZE], u_int16_t len, u_int8_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_bgp4_open (u_int8_t version, u_int16_t src_as, u_int16_t hold_time, u_int32_t bgp_id, u_int8_t opt_len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_bgp4_update (u_int16_t unfeasible_rt_len, u_int8_t *withdrawn_rt, u_int16_t total_path_attr_len, u_int8_t *path_attributes, u_int16_t info_len, u_int8_t *reachability_info, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_bgp4_notification (u_int8_t err_code, u_int8_t err_subcode, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_sebek (u_int32_t magic, u_int16_t version, u_int16_t type, u_int32_t counter, u_int32_t time_sec, u_int32_t time_usec, u_int32_t pid, u_int32_t uid, u_int32_t fd, u_int8_t cmd[SEBEK_CMD_LENGTH], u_int32_t length, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_build_link (u_int8_t *dst, u_int8_t *src, u_int8_t *oui, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)
libnet_ptag_t libnet_autobuild_link (u_int8_t *dst, u_int8_t *oui, u_int16_t type, libnet_t *l)
int libnet_write (libnet_t *l)
u_int32_t libnet_get_ipaddr4 (libnet_t *l)
libnet_in6_addr libnet_get_ipaddr6 (libnet_t *l)
libnet_ether_addr * libnet_get_hwaddr (libnet_t *l)
u_int8_t * libnet_hex_aton (int8_t *s, int *len)
int libnet_adv_cull_packet (libnet_t *l, u_int8_t **packet, u_int32_t *packet_s)
int libnet_adv_cull_header (libnet_t *l, libnet_ptag_t ptag, u_int8_t **header, u_int32_t *header_s)
int libnet_adv_write_link (libnet_t *l, u_int8_t *packet, u_int32_t packet_s)
void libnet_adv_free_packet (libnet_t *l, u_int8_t *packet)
int libnet_cq_add (libnet_t *l, char *label)
libnet_t * libnet_cq_remove (libnet_t *l)
libnet_t * libnet_cq_remove_by_label (char *label)
int8_t * libnet_cq_getlabel (libnet_t *l)
libnet_t * libnet_cq_find_by_label (char *label)
void libnet_cq_destroy ()
libnet_t * libnet_cq_head ()
int libnet_cq_last ()
libnet_t * libnet_cq_next ()
u_int32_t libnet_cq_size ()
void libnet_diag_dump_context (libnet_t *l)
void libnet_diag_dump_pblock (libnet_t *l)
char * libnet_diag_dump_pblock_type (u_int8_t type)
void libnet_diag_dump_hex (u_int8_t *packet, u_int32_t len, int swap, FILE *stream)
-int libnet_write_raw_ipv4 (libnet_t *l, u_int8_t *packet, u_int32_t size)
-int libnet_write_raw_ipv6 (libnet_t *l, u_int8_t *packet, u_int32_t size)
-int libnet_write_link (libnet_t *l, u_int8_t *packet, u_int32_t size)
-int libnet_open_raw4 (libnet_t *l)
-int libnet_close_raw4 (libnet_t *l)
-int libnet_open_raw6 (libnet_t *l)
-int libnet_close_raw6 (libnet_t *l)
-int libnet_select_device (libnet_t *l)
-int libnet_open_link (libnet_t *l)
-int libnet_close_link (libnet_t *l)
-int libnet_do_checksum (libnet_t *l, u_int8_t *packet, int protocol, int len)
-u_int32_t libnet_compute_crc (u_int8_t *buf, u_int32_t len)
-u_int16_t libnet_ip_check (u_int16_t *addr, int len)
-int libnet_in_cksum (u_int16_t *addr, int len)
-libnet_pblock_t * libnet_pblock_probe (libnet_t *l, libnet_ptag_t ptag, u_int32_t n, u_int8_t type)
-libnet_pblock_t * libnet_pblock_new (libnet_t *l, u_int32_t size)
-int libnet_pblock_swap (libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2)
-int libnet_pblock_insert_before (libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2)
-void libnet_pblock_delete (libnet_t *l, libnet_pblock_t *p)
-libnet_ptag_t libnet_pblock_update (libnet_t *l, libnet_pblock_t *p, u_int32_t h, u_int8_t type)
-libnet_pblock_t * libnet_pblock_find (libnet_t *l, libnet_ptag_t ptag)
-int libnet_pblock_append (libnet_t *l, libnet_pblock_t *p, u_int8_t *buf, u_int32_t len)
-void libnet_pblock_setflags (libnet_pblock_t *p, u_int8_t flags)
-int libnet_pblock_p2p (u_int8_t type)
-int libnet_pblock_coalesce (libnet_t *l, u_int8_t **packet, u_int32_t *size)
-int libnet_check_iface (libnet_t *l)

Variables

-const struct libnet_in6_addr in6addr_error
-


Detailed Description

-libnet exported function prototypes -

-


Function Documentation

-

- - - - -
- - - - - - - - - - - - - - - - - - - -
char* libnet_addr2name4 u_int32_t  in,
u_int8_t  use_name
-
- - - - - -
-   - - -

-Takes a network byte ordered IPv4 address and returns a pointer to either a canonical DNS name (if it has one) or a string of dotted decimals. This may incur a DNS lookup if the hostname and mode is set to LIBNET_RESOLVE. If mode is set to LIBNET_DONT_RESOLVE, no DNS lookup will be performed and the function will return a pointer to a dotted decimal string. The function cannot fail -- if no canonical name exists, it will fall back on returning a dotted decimal string. This function is non-reentrant.

Parameters:
- - - -
in network byte ordered IPv4 address
use_name LIBNET_RESOLVE or LIBNET_DONT_RESOLVE
-
-
Returns:
a pointer to presentation format string
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void libnet_addr2name6_r struct libnet_in6_addr  addr,
u_int8_t  use_name,
char *  host_name,
int  host_name_len
-
- - - - - -
-   - - -

-Should document this baby right here.

-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
int libnet_adv_cull_header libnet_t *  l,
libnet_ptag_t  ptag,
u_int8_t **  header,
u_int32_t *  header_s
-
- - - - - -
-   - - -

-[Advanced Interface] Pulls the header from the specified ptag from the given libnet context. This function is part of the advanced interface and is only available when libnet is initialized in advanced mode. If the function fails libnet_geterror() can tell you why.

Parameters:
- - - - - -
l pointer to a libnet context
ptag the ptag referencing the header to pull
header will contain the header
header_s will contain the header size
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
int libnet_adv_cull_packet libnet_t *  l,
u_int8_t **  packet,
u_int32_t *  packet_s
-
- - - - - -
-   - - -

-[Advanced Interface] Yanks a prebuilt, wire-ready packet from the given libnet context. If libnet was configured to do so (which it is by default) the packet will have all checksums written in. This function is part of the advanced interface and is only available when libnet is initialized in advanced mode. It is important to note that the function performs an implicit malloc() and a corresponding call to libnet_adv_free_packet() should be made to free the memory packet occupies. If the function fails libnet_geterror() can tell you why.

Parameters:
- - - - -
l pointer to a libnet context
packet will contain the wire-ready packet
packet_s will contain the packet size
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
void libnet_adv_free_packet libnet_t *  l,
u_int8_t *  packet
-
- - - - - -
-   - - -

-[Advanced Interface] Frees the memory allocated when libnet_adv_cull_packet() is called.

Parameters:
- - - -
l pointer to a libnet context
packet a pointer to the packet to free
-
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
int libnet_adv_write_link libnet_t *  l,
u_int8_t *  packet,
u_int32_t  packet_s
-
- - - - - -
-   - - -

-[Advanced Interface] Writes a packet the network at the link layer. This function is useful to write a packet that has been constructed by hand by the application programmer or, more commonly, to write a packet that has been returned by a call to libnet_adv_cull_packet(). This function is part of the advanced interface and is only available when libnet is initialized in advanced mode. If the function fails libnet_geterror() can tell you why.

Parameters:
- - - - -
l pointer to a libnet context
packet a pointer to the packet to inject
packet_s the size of the packet
-
-
Returns:
the number of bytes written, or -1 on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_arp u_int16_t  op,
u_int8_t *  sha,
u_int8_t *  spa,
u_int8_t *  tha,
u_int8_t *  tpa,
libnet_t *  l
-
- - - - - -
-   - - -

-Autouilds an Address Resolution Protocol (ARP) header. Depending on the op value, the function builds one of several different types of RFC 826 or RFC 903 RARP packets.

Parameters:
- - - - - - - -
op ARP operation type
sha sender's hardware address
spa sender's protocol address
tha target hardware address
tpa targer protocol address
l pointer to a libnet context
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_ethernet u_int8_t *  dst,
u_int16_t  type,
libnet_t *  l
-
- - - - - -
-   - - -

-Autobuilds an Ethernet header. The RFC 894 Ethernet II header is almost identical to the IEEE 802.3 header, with the exception that the field immediately following the source address holds the layer 3 protocol (as opposed to frame's length). You should only use this function when libnet is initialized with the LIBNET_LINK interface.

Parameters:
- - - - -
dst destination ethernet address
type upper layer protocol type
l pointer to a libnet context
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_fddi u_int8_t  fc,
u_int8_t *  dst,
u_int8_t  dsap,
u_int8_t  ssap,
u_int8_t  cf,
u_int8_t *  org,
u_int16_t  type,
libnet_t *  l
-
- - - - - -
-   - - -

-Autobuilds a Fiber Distributed Data Interface (FDDI) header.

Parameters:
- - - - - - - - -
fc class format and priority dst destination fddi address
dsap destination service access point
ssap source service access point
cf cf
org IEEE organizational code
type upper layer protocol
l pointer to a libnet context
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_ipv4 u_int16_t  len,
u_int8_t  prot,
u_int32_t  dst,
libnet_t *  l
-
- - - - - -
-   - - -

-Autobuilds a version 4 Internet Protocol (IP) header. The function is useful * to build an IP header quickly when you do not need a granular level of control. The function takes the same len, prot, and dst arguments as libnet_build_ipv4(). The function does not accept a ptag argument, but it does return a ptag. In other words, you can use it to build a new IP header but not to modify an existing one.

Parameters:
- - - - - -
len total length of the IP packet including all subsequent data
prot upper layer protocol
dst destination IPv4 address (little endian)
l pointer to a libnet context
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_ipv6 u_int16_t  len,
u_int8_t  nh,
struct libnet_in6_addr  dst,
libnet_t *  l
-
- - - - - -
-   - - -

-This function is not yet implement and is a NONOP.

Parameters:
- - - - - - - - -
len length
nh next header
dst destination IPv6 address
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_link u_int8_t *  dst,
u_int8_t *  oui,
u_int16_t  type,
libnet_t *  l
-
- - - - - -
-   - - -

-Automatically builds a link layer header for an initialized l. The function determines the proper link layer header format from how l was initialized. The function current supports Ethernet and Token Ring link layers.

Parameters:
- - - - - -
dst the destination MAC address
oui Organizationally Unique Identifier (unused for Ethernet)
type the upper layer protocol type
l pointer to a libnet context
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_autobuild_token_ring u_int8_t  ac,
u_int8_t  fc,
u_int8_t *  dst,
u_int8_t  dsap,
u_int8_t  ssap,
u_int8_t  cf,
u_int8_t *  org,
u_int16_t  type,
libnet_t *  l
-
- - - - - -
-   - - -

-Auto-builds a token ring header.

Parameters:
- - - - - - - - - - -
ac access control
fc frame control
dst destination address
dsap destination service access point
ssap source service access point
cf control field
oui Organizationally Unique Identifier
type upper layer protocol type
l pointer to a libnet context
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_802_1q u_int8_t *  dst,
u_int8_t *  src,
u_int16_t  tpi,
u_int8_t  priority,
u_int8_t  cfi,
u_int16_t  vlan_id,
u_int16_t  len_proto,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.1q VLAN tagging header. Depending on the value of len_proto, the function wraps the 802.1q header inside either an IEEE 802.3 header or an RFC 894 Ethernet II (DIX) header (both resulting in an 18-byte frame). If len is 1500 or less, most receiving protocol stacks parse the frame as an IEEE 802.3 encapsulated frame. If len is one of the Ethernet type values, most protocol stacks parse the frame as an RFC 894 Ethernet II encapsulated frame. Note the length value is calculated without the 802.1q header of 18 bytes.

Parameters:
- - - - - - - - - - - - -
dst pointer to a six byte source ethernet address
src pointer to a six byte destination ethernet address
tpi tag protocol identifier
priority priority
cfi canonical format indicator
vlan_id vlan identifier
len_proto length (802.3) protocol (Ethernet II)
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_802_1x u_int8_t  eap_ver,
u_int8_t  eap_type,
u_int16_t  length,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.1x extended authentication protocol header.

Parameters:
- - - - - - - - -
eap_ver the EAP version
eap_type the EAP type
length frame length
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_802_2 u_int8_t  dsap,
u_int8_t  ssap,
u_int8_t  control,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.2 LLC header.

Parameters:
- - - - - - - - -
dsap destination service access point
ssap source service access point
control control field
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_802_2snap u_int8_t  dsap,
u_int8_t  ssap,
u_int8_t  control,
u_int8_t *  oui,
u_int16_t  type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.2 LLC SNAP header.

Parameters:
- - - - - - - - - - -
dsap destination service access point
ssap source service access point
control control field
oui Organizationally Unique Identifier
type upper layer protocol
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_802_3 u_int8_t *  dst,
u_int8_t *  src,
u_int16_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.3 header. The 802.3 header is almost identical to the RFC 894 Ethernet II header, the exception being that the field immediately following the source address holds the frame's length (as opposed to the layer 3 protocol). You should only use this function when libnet is initialized with the LIBNET_LINK interface.

Parameters:
- - - - - - - - -
dst destination ethernet address
src source ethernet address
len frame length sans header
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_arp u_int16_t  hrd,
u_int16_t  pro,
u_int8_t  hln,
u_int8_t  pln,
u_int16_t  op,
u_int8_t *  sha,
u_int8_t *  spa,
u_int8_t *  tha,
u_int8_t *  tpa,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an Address Resolution Protocol (ARP) header. Depending on the op value, the function builds one of several different types of RFC 826 or RFC 903 RARP packets.

Parameters:
- - - - - - - - - - - - - - -
hrd hardware address format
pro protocol address format
hln hardware address length
pln protocol address length
op ARP operation type
sha sender's hardware address
spa sender's protocol address
tha target hardware address
tpa targer protocol address
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_bgp4_header u_int8_t  marker[LIBNET_BGP4_MARKER_SIZE],
u_int16_t  len,
u_int8_t  type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) header. The primary function of a BGP speaking system is to exchange network reachability information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems (ASs) that reachability information traverses. This information is sufficient to construct a graph of AS connectivity from which routing loops may be pruned and some policy decisions at the AS level may be enforced. This function builds the base BGP header which is used as a preamble before any other BGP header. For example, a BGP KEEPALIVE message may be built with only this function, while an error notification requires a subsequent call to libnet_build_bgp4_notification.

Parameters:
- - - - - - - - -
marker a value the receiver can predict (if the message type is not BGP OPEN, or no authentication is used, these 16 bytes are normally set as all ones)
len total length of the BGP message, including the header
type type code of the message (OPEN, UPDATE, NOTIFICATION or KEEPALIVE)
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_bgp4_notification u_int8_t  err_code,
u_int8_t  err_subcode,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) notification header. A NOTIFICATION message is sent when an error condition is detected. Specific error information may be passed through the payload interface.

Parameters:
- - - - - - - -
err_code type of notification
err_subcode more specific information about the reported error.
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_bgp4_open u_int8_t  version,
u_int16_t  src_as,
u_int16_t  hold_time,
u_int32_t  bgp_id,
u_int8_t  opt_len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) OPEN header. This is the first message sent by each side of a BGP connection. The optional parameters options should be constructed using the payload interface (see RFC 1771 for the options structures).

Parameters:
- - - - - - - - - - -
version protocol version (should be set to 4)
src_as Autonomous System of the sender
hold_time used to compute the maximum allowed time between the receipt of KEEPALIVE, and/or UPDATE messages by the sender
bgp_id BGP identifier of the sender
opt_len total length of the optional parameters field in bytes
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_bgp4_update u_int16_t  unfeasible_rt_len,
u_int8_t *  withdrawn_rt,
u_int16_t  total_path_attr_len,
u_int8_t *  path_attributes,
u_int16_t  info_len,
u_int8_t *  reachability_info,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) update header. Update messages are used to transfer routing information between BGP peers.

Parameters:
- - - - - - - - - - - -
unfeasible_rt_len indicates the length of the (next) "withdrawn routes" field in bytes
withdrawn_rt list of IP addresses prefixes for the routes that are being withdrawn; each IP address prefix is built as a 2-tuple <length (1 byte), prefix (variable)>
total_path_attr_len indicates the length of the (next) "path attributes" field in bytes
path_attributes each attribute is a 3-tuple <type (2 bytes), length, value>
info_len indicates the length of the (next) "network layer reachability information" field in bytes (needed for internal memory size calculation)
reachability_info 2-tuples <length (1 byte), prefix (variable)>.
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_bootpv4 u_int8_t  opcode,
u_int8_t  htype,
u_int8_t  hlen,
u_int8_t  hopcount,
u_int32_t  xid,
u_int16_t  secs,
u_int16_t  flags,
u_int32_t  cip,
u_int32_t  yip,
u_int32_t  sip,
u_int32_t  gip,
u_int8_t *  chaddr,
u_int8_t *  sname,
u_int8_t *  file,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_cdp u_int8_t  version,
u_int8_t  ttl,
u_int16_t  sum,
u_int16_t  type,
u_int16_t  len,
u_int8_t *  value,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a Cisco Discovery Protocol (CDP) header. Cisco Systems designed CDP to aid in the network management of adjacent Cisco devices. The CDP protocol specifies data by using a type/length/value (TLV) setup. The first TLV can specified by using the functions type, length, and value arguments. To specify additional TLVs, the programmer could either use the payload interface or libnet_build_data() to construct them.

Parameters:
- - - - - - - - - - - -
version CDP version
ttl time to live (time information should be cached by recipient)
sum checksum (0 for libnet to autofill)
type type of data contained in value
len length of value arugment
value the CDP information string
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_data u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a generic libnet protocol header. This is useful for including an optional payload to a packet that might need to change repeatedly inside of a loop.

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_dhcpv4 u_int8_t  opcode,
u_int8_t  htype,
u_int8_t  hlen,
u_int8_t  hopcount,
u_int32_t  xid,
u_int16_t  secs,
u_int16_t  flags,
u_int32_t  cip,
u_int32_t  yip,
u_int32_t  sip,
u_int32_t  gip,
u_int8_t *  chaddr,
u_int8_t *  sname,
u_int8_t *  file,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_dnsv4 u_int16_t  h_len,
u_int16_t  id,
u_int16_t  flags,
u_int16_t  num_q,
u_int16_t  num_anws_rr,
u_int16_t  num_auth_rr,
u_int16_t  num_addi_rr,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 1035 version 4 DNS header. Additional DNS payload information should be specified using the payload interface.

Parameters:
- - - - - - - - - - - -
id DNS packet id
flags control flags
num_q number of questions
num_anws_rr number of answer resource records
num_auth_rr number of authority resource records
num_addi_rr number of additional resource records
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_egre u_int16_t  fv,
u_int16_t  type,
u_int16_t  sum,
u_int16_t  offset,
u_int32_t  key,
u_int32_t  seq,
u_int16_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Generic Routing Encapsulation (GRE - RFC 1701) is used to encapsulate any protocol. Hence, the IP part of the packet is usually referred as "delivery header". It is then followed by the GRE header and finally the encapsulated packet (IP or whatever). As GRE is very modular, the first GRE header describes the structure of the header, using bits and flag to specify which fields will be present in the header.

Parameters:
- - - - - - - - - - - - -
fv the 16 0 to 7: which fields are included in the header (checksum, seq. number, key, ...), bits 8 to 12: flag, bits 13 to 15: version.
payload optional payload or NULL
type which protocol is encapsulated (PPP, IP, ...)
sum checksum (0 for libnet to autofill).
offset byte offset from the start of the routing field to the first byte of the SRE
key inserted by the encapsulator to authenticate the source
seq sequence number used by the receiver to sort the packets
len size of the GRE packet
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ethernet u_int8_t *  dst,
u_int8_t *  src,
u_int16_t  type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an Ethernet header. The RFC 894 Ethernet II header is almost identical to the IEEE 802.3 header, with the exception that the field immediately following the source address holds the layer 3 protocol (as opposed to frame's length). You should only use this function when libnet is initialized with the LIBNET_LINK interface.

Parameters:
- - - - - - - - -
dst destination ethernet address
src source ethernet address
type upper layer protocol type
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_fddi u_int8_t  fc,
u_int8_t *  dst,
u_int8_t *  src,
u_int8_t  dsap,
u_int8_t  ssap,
u_int8_t  cf,
u_int8_t *  org,
u_int16_t  type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a Fiber Distributed Data Interface (FDDI) header.

Parameters:
- - - - - - - - - - - -
fc class format and priority dst destination fddi address src source fddi address
dsap destination service access point
ssap source service access point
cf cf
org 3 byte IEEE organizational code
type upper layer protocol
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_gre u_int16_t  fv,
u_int16_t  type,
u_int16_t  sum,
u_int16_t  offset,
u_int32_t  key,
u_int32_t  seq,
u_int16_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Generic Routing Encapsulation (GRE - RFC 1701) is used to encapsulate any protocol. Hence, the IP part of the packet is usually referred as "delivery header". It is then followed by the GRE header and finally the encapsulated packet (IP or whatever). As GRE is very modular, the first GRE header describes the structure of the header, using bits and flag to specify which fields will be present in the header.

Parameters:
- - - - - - - - - - - - -
fv the 16 0 to 7: which fields are included in the header (checksum, seq. number, key, ...), bits 8 to 12: flag, bits 13 to 15: version.
payload optional payload or NULL
type which protocol is encapsulated (PPP, IP, ...)
sum checksum (0 for libnet to autofill).
offset byte offset from the start of the routing field to the first byte of the SRE
key inserted by the encapsulator to authenticate the source
seq sequence number used by the receiver to sort the packets
len size of the GRE packet
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_gre_last_sre libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_gre_sre u_int16_t  af,
u_int8_t  offset,
u_int8_t  length,
u_int8_t *  routing,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_icmpv4_echo u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int16_t  id,
u_int16_t  seq,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) echo request/reply header

Parameters:
- - - - - - - - - - -
type type of ICMP packet (should be ICMP_ECHOREPLY or ICMP_ECHO)
code code of ICMP packet (should be 0)
sum checksum (0 for libnet to autofill)
id identification number
seq packet sequence number
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_icmpv4_mask u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int16_t  id,
u_int16_t  seq,
u_int32_t  mask,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) IP netmask request/reply header.

Parameters:
- - - - - - - - - - - -
type type of ICMP packet (should be ICMP_MASKREQ or ICMP_MASKREPLY)
code code of ICMP packet (should be 0)
sum checksum (0 for libnet to autofill)
id identification number
seq packet sequence number
mask subnet mask
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_icmpv4_redirect u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int32_t  gateway,
u_int16_t  orig_len,
u_int8_t  orig_tos,
u_int16_t  orig_id,
u_int16_t  orig_frag,
u_int8_t  orig_ttl,
u_int8_t  orig_prot,
u_int16_t  orig_check,
u_int32_t  orig_src,
u_int32_t  orig_dst,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IP version 4 RFC 792 Internet Message Control Protocol (ICMP) redirect header. The additional arguments enable the application programmer to easily specify the original IP header values (the IP header of the packet that supposedly caused the ICMP redirect message in the first place).

Parameters:
- - - - - - - - - - - - - - - -
type type of ICMP packet (should be ICMP_REDIRECT)
code code of ICMP packet (should be one of the four redirect codes)
sum checksum (0 for libnet to autofill)
orig_id original IP header identification
orig_frag original IP header fragmentation information
orig_ttl orginal IP header time to live
orig_prot original IP header protocol
orig_check original IP header checksum
orig_src original IP header source address
orig_dst original IP header destination address
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_icmpv4_timeexceed u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int16_t  orig_len,
u_int8_t  orig_tos,
u_int16_t  orig_id,
u_int16_t  orig_frag,
u_int8_t  orig_ttl,
u_int8_t  orig_prot,
u_int16_t  orig_check,
u_int32_t  orig_src,
u_int32_t  orig_dst,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) time exceeded header. The additional arguments enable the application programmer to easily specify the original IPv4 header values (the IP header of the packet that supposedly caused the ICMP time exceeded message in the first place).

Parameters:
- - - - - - - - - - - - - - - - -
type type of ICMP packet (should be ICMP_TIMXCEED)
code code of ICMP packet (ICMP_TIMXCEED_INTRANS / ICMP_TIMXCEED_REASS)
sum checksum (0 for libnet to autofill)
orig_id original IP header identification
orig_frag original IP header fragmentation information
orig_ttl orginal IP header time to live
orig_prot original IP header protocol
orig_check original IP header checksum
orig_src original IP header source address
orig_dst original IP header destination address
payload optional payload or NULL
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_icmpv4_timestamp u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int16_t  id,
u_int16_t  seq,
n_time  otime,
n_time  rtime,
n_time  ttime,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) timestamp request/reply header.

Parameters:
- - - - - - - - - - - - - -
type type of ICMP packet (should be ICMP_TSTAMP or ICMP_TSTAMPREPLY)
code code of ICMP packet (should be 0)
sum checksum (0 for libnet to autofill)
id identification number
seq sequence number
otime originate timestamp
rtime receive timestamp
ttime transmit timestamp
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_icmpv4_unreach u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int16_t  orig_len,
u_int8_t  orig_tos,
u_int16_t  orig_id,
u_int16_t  orig_frag,
u_int8_t  orig_ttl,
u_int8_t  orig_prot,
u_int16_t  orig_check,
u_int32_t  orig_src,
u_int32_t  orig_dst,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) unreachable header. The additional arguments enable the application programmer to easily specify the original IPv4 header values (the IP header of the packet that supposedly caused the ICMP unreachable message in the first place).

Parameters:
- - - - - - - - - - - - - - - -
type type of ICMP packet (should be ICMP_UNREACH)
code code of ICMP packet (should be one of the 16 unreachable codes)
sum checksum (0 for libnet to autofill)
orig_id original IP header identification
orig_frag original IP header fragmentation information
orig_ttl orginal IP header time to live
orig_prot original IP header protocol
orig_check original IP header checksum
orig_src original IP header source address
orig_dst original IP header destination address
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_igmp u_int8_t  type,
u_int8_t  code,
u_int16_t  sum,
u_int32_t  ip,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 1112 Internet Group Memebership Protocol (IGMP) header.

Parameters:
- - - - - - - - - -
type packet type
code packet code (should be 0)
sum checksum (0 for libnet to autofill)
ip IPv4 address
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipsec_ah u_int8_t  nh,
u_int8_t  len,
u_int16_t  res,
u_int32_t  spi,
u_int32_t  seq,
u_int32_t  auth,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an Internet Protocol Security Authentication header.

Parameters:
- - - - - - - - - - - -
nh next header
len payload length
res reserved
spi security parameter index
seq sequence number
auth authentication data
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipsec_esp_ftr u_int8_t  len,
u_int8_t  nh,
int8_t *  auth,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an Internet Protocol Security Encapsulating Security Payload footer.

Parameters:
- - - - - - - - -
len padding length
nh next header
auth authentication data
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipsec_esp_hdr u_int32_t  spi,
u_int32_t  seq,
u_int32_t  iv,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an Internet Protocol Security Encapsulating Security Payload header.

Parameters:
- - - - - - - - -
spi security parameter index
seq ESP sequence number
iv initialization vector
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv4 u_int16_t  len,
u_int8_t  tos,
u_int16_t  id,
u_int16_t  frag,
u_int8_t  ttl,
u_int8_t  prot,
u_int16_t  sum,
u_int32_t  src,
u_int32_t  dst,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a version 4 RFC 791 Internet Protocol (IP) header.

Parameters:
- - - - - - - - - - - - - - -
len total length of the IP packet including all subsequent data
tos type of service bits
id IP identification number
frag fragmentation bits and offset
ttl time to live in the network
prot upper layer protocol
sum checksum (0 for libnet to autofill)
src source IPv4 address (little endian)
dst destination IPv4 address (little endian)
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv4_options u_int8_t *  options,
u_int32_t  options_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an version 4 Internet Protocol (IP) options header. The function expects options to be a valid IP options string of size options_s, no larger than 40 bytes (the maximum size of an options string). The function checks to make sure that the preceding header is an IPv4 header and that the options string would not result in a packet larger than 65,535 bytes (IPMAXPACKET). The function counts up the number of 32-bit words in the options string and adjusts the IP header length value as necessary.

Parameters:
- - - - - -
options byte string of IP options
options_s length of options string
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv6 u_int8_t  tc,
u_int32_t  fl,
u_int16_t  len,
u_int8_t  nh,
u_int8_t  hl,
struct libnet_in6_addr  src,
struct libnet_in6_addr  dst,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a version 6 RFC 2460 Internet Protocol (IP) header.

Parameters:
- - - - - - - - - - - - -
tc traffic class
fl flow label
len total length of the IP packet
nh next header
hl hop limit
src source IPv6 address
dst destination IPv6 address
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv6_destopts u_int8_t  nh,
u_int8_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a version 6 RFC 2460 Internet Protocol (IP) destination options header. This function is special in that it uses the payload interface to include the options data. The application programmer will build an IPv6 options byte string and pass it to the function using the payload interface.

Parameters:
- - - - - - - -
nh next header
len length of the header in 8-byte octets not including the first 8 octets
payload options payload
payload_s payload length
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv6_frag u_int8_t  nh,
u_int8_t  reserved,
u_int16_t  frag,
u_int32_t  id,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a version 6 RFC 2460 Internet Protocol (IP) fragmentation header.

Parameters:
- - - - - - - - - -
nh next header
reserved unused value... OR IS IT!
frag fragmentation bits (ala ipv4)
id packet identification
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv6_hbhopts u_int8_t  nh,
u_int8_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a version 6 RFC 2460 Internet Protocol (IP) hop by hop options header. This function is special in that it uses the payload interface to include the options data. The application programmer will build an IPv6 hop by hop options byte string and pass it to the function using the payload interface.

Parameters:
- - - - - - - -
nh next header
len length of the header in 8-byte octets not including the first 8 octets
payload options payload
payload_s payload length
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ipv6_routing u_int8_t  nh,
u_int8_t  len,
u_int8_t  rtype,
u_int8_t  segments,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a version 6 RFC 2460 Internet Protocol (IP) routing header. This function is special in that it uses the payload interface to include the "type-specific data"; that is the routing information. Most often this will be a number of 128-bit IPv6 addresses. The application programmer will build a byte string of IPv6 address and pass them to the function using the payload interface.

Parameters:
- - - - - - - - -
nh next header
len length of the header in 8-byte octets not including the first 8 octets routing header type
segments number of routing segments that follow
payload optional payload of routing information
payload_s payload length
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_isl u_int8_t *  dhost,
u_int8_t  type,
u_int8_t  user,
u_int8_t *  shost,
u_int16_t  len,
u_int8_t *  snap,
u_int16_t  vid,
u_int16_t  index,
u_int16_t  reserved,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a Cisco Inter-Switch Link (ISL) header.

Parameters:
- - - - - - - - - - - - - - -
dhost destination address (should be 01:00:0c:00:00)
type type of frame
user user defined data
shost source mac address
len total length of the encapuslated packet less 18 bytes
snap SNAP information (0xaaaa03 + vendor code)
vid 15 bit VLAN ID, 1 bit BPDU or CDP indicator
index port index
reserved used for FDDI and token ring
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_link u_int8_t *  dst,
u_int8_t *  src,
u_int8_t *  oui,
u_int16_t  type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a link layer header for an initialized l. The function determines the proper link layer header format from how l was initialized. The function current supports Ethernet and Token Ring link layers.

Parameters:
- - - - - - - - - -
dst the destination MAC address
src the source MAC address
oui Organizationally Unique Identifier (unused for Ethernet)
type the upper layer protocol type
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_mpls u_int32_t  label,
u_int8_t  experimental,
u_int8_t  bos,
u_int8_t  ttl,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 3032 Multi-Protocol Label Switching (MPLS) header.

Parameters:
- - - - - - - - - -
label 20-bit label value
experimental 3-bit reserved field
bos 1-bit bottom of stack identifier
ttl time to live
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ntp u_int8_t  leap_indicator,
u_int8_t  version,
u_int8_t  mode,
u_int8_t  stratum,
u_int8_t  poll,
u_int8_t  precision,
u_int16_t  delay_int,
u_int16_t  delay_frac,
u_int16_t  dispersion_int,
u_int16_t  dispersion_frac,
u_int32_t  reference_id,
u_int32_t  ref_ts_int,
u_int32_t  ref_ts_frac,
u_int32_t  orig_ts_int,
u_int32_t  orig_ts_frac,
u_int32_t  rec_ts_int,
u_int32_t  rec_ts_frac,
u_int32_t  xmt_ts_int,
u_int32_t  xmt_ts_frac,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 958 Network Time Protocol (NTP) header.

Parameters:
- - - - - - - - - - - - - - - - - - - - - - - - -
leap_indicator the leap indicator
version NTP protocol version
mode NTP mode
stratum stratum
poll polling interval
precision precision
delay_interval delay interval
delay_frac delay fraction
dispersion_int dispersion interval
dispersion_frac dispersion fraction
reference_id reference id
ref_ts_int reference timestamp integer
ref_ts_frac reference timestamp fraction
orig_ts_int original timestamp integer
orig_ts_frac original timestamp fraction
rec_ts_int receiver timestamp integer
rec_ts_frac reciever timestamp fraction
xmt_ts_int transmit timestamp integer
xmt_ts_frac transmit timestamp integer
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2 u_int16_t  len,
u_int8_t  type,
u_int32_t  rtr_id,
u_int32_t  area_id,
u_int16_t  sum,
u_int16_t  autype,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_dbd u_int16_t  dgram_len,
u_int8_t  opts,
u_int8_t  type,
u_int  seqnum,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_hello u_int32_t  netmask,
u_int16_t  interval,
u_int8_t  opts,
u_int8_t  priority,
u_int  dead_int,
u_int32_t  des_rtr,
u_int32_t  bkup_rtr,
u_int32_t  neighbor,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsa u_int16_t  age,
u_int8_t  opts,
u_int8_t  type,
u_int  lsid,
u_int32_t  advrtr,
u_int  seqnum,
u_int16_t  sum,
u_int16_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsa_as u_int32_t  nmask,
u_int  metric,
u_int32_t  fwdaddr,
u_int  tag,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsa_net u_int32_t  nmask,
u_int  rtrid,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsa_rtr u_int16_t  flags,
u_int16_t  num,
u_int  id,
u_int  data,
u_int8_t  type,
u_int8_t  tos,
u_int16_t  metric,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsa_sum u_int32_t  nmask,
u_int  metric,
u_int  tos,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsr u_int  type,
u_int  lsid,
u_int32_t  advrtr,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_ospfv2_lsu u_int  num,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_rip u_int8_t  cmd,
u_int8_t  version,
u_int16_t  rd,
u_int16_t  af,
u_int16_t  rt,
u_int32_t  addr,
u_int32_t  mask,
u_int32_t  next_hop,
u_int32_t  metric,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a Routing Information Protocol header (RFCs 1058 and 2453).

Parameters:
- - - - - - - - - - - - - - -
cmd command
version protocol version
rd version one: 0, version two: routing domain
af address family
rt version one: 0, version two: route tag
addr IPv4 address
mask version one: 0, version two: subnet mask
next_hop version one: 0, version two: next hop address
metric routing metric
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_rpc_call u_int32_t  rm,
u_int32_t  xid,
u_int32_t  prog_num,
u_int32_t  prog_vers,
u_int32_t  procedure,
u_int32_t  cflavor,
u_int32_t  clength,
u_int8_t *  cdata,
u_int32_t  vflavor,
u_int32_t  vlength,
u_int8_t *  vdata,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an Remote Procedure Call (Version 2) Call message header as specified in RFC 1831. This builder provides the option for specifying the record marking which is required when used with streaming protocols (TCP).

Parameters:
- - - - - - - - - - - - - - - - -
rm record marking indicating the position in a stream, 0 otherwise
xid transaction identifier used to link calls and replies
prog_num remote program specification typically between 0 - 1fffffff
prog_vers remote program version specification
procedure procedure to be performed by remote program
cflavor authentication credential type
clength credential length (should be 0)
cdata opaque credential data (currently unused)
vflavor authentication verifier type
vlength verifier length (should be 0)
vdata opaque verifier data (currently unused)
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_sebek u_int32_t  magic,
u_int16_t  version,
u_int16_t  type,
u_int32_t  counter,
u_int32_t  time_sec,
u_int32_t  time_usec,
u_int32_t  pid,
u_int32_t  uid,
u_int32_t  fd,
u_int8_t  cmd[SEBEK_CMD_LENGTH],
u_int32_t  length,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a Sebek header. The Sebek protocol was designed by the Honeynet Project as a transport mechanism for post-intrusion forensic data. More information may be found here: http://www.honeynet.org/papers/sebek.pdf.

-

Parameters:
- - - - - - - - - - - - - - - - -
magic identify packets that should be hidden
version protocol version, currently 1
type type of record (read data is type 0, write data is type 1)
counter PDU counter used to identify when packet are lost
time_sec seconds since EPOCH according to the honeypot
time_usec residual microseconds
pid PID
uid UID
fd FD
cmd[SEBEK_CMD_LENGTH] 12 first characters of the command
length length in bytes of the PDU's body
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_stp_conf u_int16_t  id,
u_int8_t  version,
u_int8_t  bpdu_type,
u_int8_t  flags,
u_int8_t *  root_id,
u_int32_t  root_pc,
u_int8_t *  bridge_id,
u_int16_t  port_id,
u_int16_t  message_age,
u_int16_t  max_age,
u_int16_t  hello_time,
u_int16_t  f_delay,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.1d Spanning Tree Protocol (STP) configuration header. STP frames are usually encapsulated inside of an 802.2 + 802.3 frame combination.

Parameters:
- - - - - - - - - - - - - - - - - -
id protocol id
version protocol version
bpdu_type bridge protocol data unit type
flags flags
root_id root id
root_pc root path cost
bridge_id bridge id
port_id port id
message_age message age
max_age max age
hello_time hello time
f_delay forward delay
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_stp_tcn u_int16_t  id,
u_int8_t  version,
u_int8_t  bpdu_type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an IEEE 802.1d Spanning Tree Protocol (STP) topology change notification header. STP frames are usually encapsulated inside of an 802.2 + 802.3 frame combination.

Parameters:
- - - - - - - - -
id protocol id
version protocol version
bpdu_type bridge protocol data unit type
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_tcp u_int16_t  sp,
u_int16_t  dp,
u_int32_t  seq,
u_int32_t  ack,
u_int8_t  control,
u_int16_t  win,
u_int16_t  sum,
u_int16_t  urg,
u_int16_t  len,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 793 Transmission Control Protocol (TCP) header.

Parameters:
- - - - - - - - - - - - -
sp source port
dp destination port
seq sequence number
ack acknowledgement number
control control flags
win window size
sum checksum (0 for libnet to autofill)
urg urgent pointer len total length of the TCP packet (for checksum calculation)
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_tcp_options u_int8_t *  options,
u_int32_t  options_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 793 Transmission Control Protocol (TCP) options header. The function expects options to be a valid TCP options string of size options_s, which is no larger than 40 bytes (the maximum size of an options string). The function checks to ensure that the packet consists of a TCP header preceded by an IPv4 header, and that the addition of the options string would not result in a packet larger than 65,535 bytes (IPMAXPACKET). The function counts up the number of 32-bit words in the options string and adjusts the TCP header length value as necessary.

Parameters:
- - - - - -
options byte string of TCP options
options_s length of options string
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_token_ring u_int8_t  ac,
u_int8_t  fc,
u_int8_t *  dst,
u_int8_t *  src,
u_int8_t  dsap,
u_int8_t  ssap,
u_int8_t  cf,
u_int8_t *  org,
u_int16_t  type,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds a token ring header.

Parameters:
- - - - - - - - - - - - - - -
ac access control
fc frame control
dst destination address
src source address
dsap destination service access point
ssap source service access point
cf control field
oui Organizationally Unique Identifier
type upper layer protocol type
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_udp u_int16_t  sp,
u_int16_t  dp,
u_int16_t  len,
u_int16_t  sum,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 768 User Datagram Protocol (UDP) header.

Parameters:
- - - - - - - - - -
sp source port
dp destination port
len total length of the UDP packet
sum checksum (0 for libnet to autofill)
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_ptag_t libnet_build_vrrp u_int8_t  version,
u_int8_t  type,
u_int8_t  vrouter_id,
u_int8_t  priority,
u_int8_t  ip_count,
u_int8_t  auth_type,
u_int8_t  advert_int,
u_int16_t  sum,
u_int8_t *  payload,
u_int32_t  payload_s,
libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Builds an RFC 2338 Virtual Router Redundacy Protool (VRRP) header. Use the payload interface to specify address and autthentication information. To build a "legal" packet, the destination IPv4 address should be the multicast * address 224.0.0.18, the IP TTL should be set to 255, and the IP protocol should be set to 112.

Parameters:
- - - - - - - - - - - - - -
version VRRP version (should be 2)
type VRRP packet type (should be 1 -- ADVERTISEMENT)
vrouter_id virtual router identification
priority priority (higher numbers indicate higher priority)
ip_count number of IPv4 addresses contained in this advertisement
auth_type type of authentication (0, 1, 2 -- see RFC)
advert_int interval between advertisements
sum checksum (0 for libnet to autofill)
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - -
void libnet_clear_packet libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Clears the current packet referenced and frees all pblocks. Should be called when the programmer want to send a completely new packet of a different type using the same context.

Parameters:
- - -
l pointer to a libnet context
-
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
int libnet_cq_add libnet_t *  l,
char *  label
-
- - - - - -
-   - - -

-[Context Queue] Adds a new context to the libnet context queue. If no queue exists, this function will create the queue and add the specified libnet context as the first entry on the list. The functions checks to ensure niether l nor label are NULL, and that label doesn't refer to an existing context already in the queue. Additionally, l should refer to a libnet context previously initialized with a call to libnet_init(). If the context queue in write locked, this function will fail.

Parameters:
- - - -
l pointer to a libnet context
label a canonical name given to recognize the new context, no longer than LIBNET_LABEL_SIZE
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - -
void libnet_cq_destroy  ) 
-
- - - - - -
-   - - -

-[Context Queue] Destroys the entire context queue, calling libnet_destroy() on each member context.

-

- - - - -
- - - - - - - - - - -
libnet_t* libnet_cq_find_by_label char *  label  ) 
-
- - - - - -
-   - - -

-[Context Queue] Locates a libnet context from the queue, indexed by a canonical label.

Parameters:
- - -
label canonical label of the libnet context to retrieve
-
-
Returns:
the expected libnet context, NULL on failure
-
-

- - - - -
- - - - - - - - - - -
int8_t* libnet_cq_getlabel libnet_t *  l  ) 
-
- - - - - -
-   - - -

-[Context Queue] Returns the canonical label associated with the context.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
pointer to the libnet context's label
-
-

- - - - -
- - - - - - - - - -
libnet_t* libnet_cq_head  ) 
-
- - - - - -
-   - - -

-[Context Queue] Intiailizes the interator interface and set a write lock on the entire queue. This function is intended to be called just prior to interating through the entire list of contexts (with the probable intent of inject a series of packets in rapid succession). This function is often used as per the following:

-for (l = libnet_cq_head(); libnet_cq_last(); l = libnet_cq_next()) { ... }

-Much of the time, the application programmer will use the iterator as it is written above; as such, libnet provides a macro to do exactly that, for_each_context_in_cq(l). Warning: do not call the iterator more than once in a single loop.

Returns:
the head of the context queue
-
-

- - - - -
- - - - - - - - - -
int libnet_cq_last  ) 
-
- - - - - -
-   - - -

-[Context Queue] Check whether the iterator is at the last context in the queue.

Returns:
1 if at the end of the context queue, 0 otherwise
-
-

- - - - -
- - - - - - - - - -
libnet_t* libnet_cq_next  ) 
-
- - - - - -
-   - - -

-[Context Queue] Get next context from the context queue. the next context from the context queue

-

- - - - -
- - - - - - - - - - -
libnet_t* libnet_cq_remove libnet_t *  l  ) 
-
- - - - - -
-   - - -

-[Context Queue] Removes a specified context from the libnet context queue by specifying the libnet context pointer. Note the function will remove the specified context from the context queue and cleanup internal memory from the queue, it is up to the application programmer to free the returned libnet context with a call to libnet_destroy(). Also, as it is not necessary to keep the libnet context pointer when initially adding it to the context queue, most application programmers will prefer to refer to entries on the context queue by canonical name and would use libnet_cq_remove_by_label(). If the context queue is write locked, this function will fail.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
the pointer to the removed libnet context, NULL on failure
-
-

- - - - -
- - - - - - - - - - -
libnet_t* libnet_cq_remove_by_label char *  label  ) 
-
- - - - - -
-   - - -

-[Context Queue] Removes a specified context from the libnet context queue by specifying the canonical name. Note the function will remove the specified context from the context queue and cleanup internal memory from the queue, it is up to the application programmer to free the returned libnet context with a call to libnet_destroy(). If the context queue is write locked, this function will fail.

Parameters:
- - -
label canonical name of the context to remove
-
-
Returns:
the pointer to the removed libnet context, NULL on failure
-
-

- - - - -
- - - - - - - - - -
u_int32_t libnet_cq_size  ) 
-
- - - - - -
-   - - -

-[Context Queue] Function returns the number of libnet contexts that are in the queue.

Returns:
the number of libnet contexts currently in the queue
-
-

- - - - -
- - - - - - - - - - -
void libnet_destroy libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Shuts down the libnet session referenced by l. It closes the network interface and frees all internal memory structures associated with l.

Parameters:
- - -
l pointer to a libnet context
-
-
-

- - - - -
- - - - - - - - - - -
void libnet_diag_dump_context libnet_t *  l  ) 
-
- - - - - -
-   - - -

-[Diagnostic] Prints the contents of the given context.

Parameters:
- - -
l pointer to a libnet context
-
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void libnet_diag_dump_hex u_int8_t *  packet,
u_int32_t  len,
int  swap,
FILE *  stream
-
- - - - - -
-   - - -

-[Diagnostic] Function prints the contents of the supplied buffer to the supplied stream pointer. Will swap endianness based disposition of mode variable. Useful to be used in conjunction with the advanced interface and a culled packet.

Parameters:
- - - - - -
packet the packet to print
len length of the packet in bytes
swap 1 to swap byte order, 0 to not
stream a stream pointer to print to
-
-
-

- - - - -
- - - - - - - - - - -
void libnet_diag_dump_pblock libnet_t *  l  ) 
-
- - - - - -
-   - - -

-[Diagnostic] Prints the contents of every pblock.

Parameters:
- - -
l pointer to a libnet context
-
-
-

- - - - -
- - - - - - - - - - -
char* libnet_diag_dump_pblock_type u_int8_t  type  ) 
-
- - - - - -
-   - - -

-[Diagnostic] Returns the canonical name of the pblock type.

Parameters:
- - -
type pblock type
-
-
Returns:
a string representing the pblock type type or "unknown" for an unknown value
-
-

- - - - -
- - - - - - - - - - -
struct libnet_ether_addr* libnet_get_hwaddr libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Returns the MAC address for the device libnet was initialized with. If libnet was initialized without a device the function will attempt to find one. If the function fails and returns NULL a call to libnet_geterror() will tell you why.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
a pointer to the MAC address or NULL
-
-

- - - - -
- - - - - - - - - - -
u_int32_t libnet_get_ipaddr4 libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Returns the IP address for the device libnet was initialized with. If libnet was initialized without a device (in raw socket mode) the function will attempt to find one. If the function fails and returns -1 a call to libnet_geterrror() will tell you why.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
a big endian IP address suitable for use in a libnet_build function or -1
-
-

- - - - -
- - - - - - - - - - -
struct libnet_in6_addr libnet_get_ipaddr6 libnet_t *  l  ) 
-
- - - - - -
-   - - -

-This function is not yet implemented under IPv6.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
well, nothing yet
-
-

- - - - -
- - - - - - - - - - -
u_int32_t libnet_get_prand int  mod  ) 
-
- - - - - -
-   - - -

-Generates an unsigned psuedo-random value within the range specified by mod. LIBNET_PR2 0 - 1 LIBNET_PR8 0 - 255 LIBNET_PR16 0 - 32767 LIBNET_PRu16 0 - 65535 LIBNET_PR32 0 - 2147483647 LIBNET_PRu32 0 - 4294967295

-

Parameters:
- - -
mod one the of LIBNET_PR* constants
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - -
int8_t* libnet_getdevice libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Returns the canonical name of the device used for packet injection.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
the canonical name of the device used for packet injection. Note it can be NULL without being an error.
-
-

- - - - -
- - - - - - - - - - -
char* libnet_geterror libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Returns the last error set inside of the referenced libnet context. This function should be called anytime a function fails or an error condition is detected inside of libnet.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
an error string or NULL if no error has occured
-
-

- - - - -
- - - - - - - - - - -
int libnet_getfd libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Returns the FILENO of the file descriptor used for packet injection.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
the file number of the file descriptor used for packet injection
-
-

- - - - -
- - - - - - - - - - -
u_int32_t libnet_getgre_length u_int16_t  fv  )  [inline]
-
- - - - - -
-   - - -

-

Parameters:
- - - - - -
payload optional payload or NULL
payload_s payload length or 0
l pointer to a libnet context
ptag protocol tag to modify an existing header, 0 to build a new one
-
-
Returns:
protocol tag value on success, -1 on error
-
-

- - - - -
- - - - - - - - - - -
u_int32_t libnet_getpacket_size libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Returns the sum of the size of all of the pblocks inside of l (this should be the resuling packet size).

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
the size of the packet in l
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
u_int8_t* libnet_getpbuf libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Returns the pblock buffer contents for the specified ptag; a subsequent call to libnet_getpbuf_size() should be made to determine the size of the buffer.

Parameters:
- - - -
l pointer to a libnet context
ptag the ptag reference number
-
-
Returns:
a pointer to the pblock buffer or NULL on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
u_int32_t libnet_getpbuf_size libnet_t *  l,
libnet_ptag_t  ptag
-
- - - - - -
-   - - -

-Returns the pblock buffer size for the specified ptag; a previous call to libnet_getpbuf() should be made to pull the actual buffer contents.

Parameters:
- - - -
l pointer to a libnet context
ptag the ptag reference number
-
-
Returns:
the size of the pblock buffer
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
u_int8_t* libnet_hex_aton int8_t *  s,
int *  len
-
- - - - - -
-   - - -

-Takes a colon separated hexidecimal address (from the command line) and returns a bytestring suitable for use in a libnet_build function. Note this function performs an implicit malloc and the return value should be freed after its use.

Parameters:
- - - -
s the string to be parsed
len the resulting size of the returned byte string
-
-
Returns:
a byte string or NULL on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
libnet_t* libnet_init int  injection_type,
char *  device,
char *  err_buf
-
- - - - - -
-   - - -

-Creates the libnet environment. It initializes the library and returns a libnet context. If the injection_type is LIBNET_LINK or LIBNET_LINK_ADV, the function initializes the injection primitives for the link-layer interface enabling the application programmer to build packets starting at the data-link layer (which also provides more granular control over the IP layer). If libnet uses the link-layer and the device argument is non-NULL, the function attempts to use the specified network device for packet injection. This is either a canonical string that references the device (such as "eth0" for a 100MB Ethernet card on Linux or "fxp0" for a 100MB Ethernet card on OpenBSD) or the dots and decimals representation of the device's IP address (192.168.0.1). If device is NULL, libnet attempts to find a suitable device to use. If the injection_type is LIBNET_RAW4 or LIBNET_RAW4_ADV, the function initializes the injection primitives for the IPv4 raw socket interface. The final argument, err_buf, should be a buffer of size LIBNET_ERRBUF_SIZE and holds an error message if the function fails. This function requires root privileges to execute successfully. Upon success, the function returns a valid libnet context for use in later function calls; upon failure, the function returns NULL.

Parameters:
- - - - -
injection_type packet injection type (LIBNET_LINK, LIBNET_LINK_ADV, LIBNET_RAW4, LIBNET_RAW4_ADV, LIBNET_RAW6, LIBNET_RAW6_ADV)
device the interface to use (NULL and libnet will choose one)
err_buf will contain an error message on failure
-
-
Returns:
libnet context ready for use or NULL on error.
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
u_int32_t libnet_name2addr4 libnet_t *  l,
char *  host_name,
u_int8_t  use_name
-
- - - - - -
-   - - -

-Takes a dotted decimal string or a canonical DNS name and returns a network byte ordered IPv4 address. This may incur a DNS lookup if mode is set to LIBNET_RESOLVE and host_name refers to a canonical DNS name. If mode is set to LIBNET_DONT_RESOLVE no DNS lookup will occur. The function can fail if DNS lookup fails or if mode is set to LIBNET_DONT_RESOLVE and host_name refers to a canonical DNS name.

Parameters:
- - - - -
l pointer to a libnet context
host_name pointer to a string containing a presentation format host name
use_name LIBNET_RESOLVE or LIBNET_DONT_RESOLVE
-
-
Returns:
network byte ordered IPv4 address or -1 (2^32 - 1) on error
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
struct libnet_in6_addr libnet_name2addr6 libnet_t *  l,
char *  host_name,
u_int8_t  use_name
-
- - - - - -
-   - - -

-Takes a dotted decimal string or a canonical DNS name and returns a network byte ordered IPv6 address. This may incur a DNS lookup if mode is set to LIBNET_RESOLVE and host_name refers to a canonical DNS name. If mode is set to LIBNET_DONT_RESOLVE no DNS lookup will occur. The function can fail if DNS lookup fails or if mode is set to LIBNET_DONT_RESOLVE and host_name refers to a canonical DNS name.

Parameters:
- - - - -
l pointer to a libnet context
host_name pointer to a string containing a presentation format host name
use_name LIBNET_RESOLVE or LIBNET_DONT_RESOLVE
-
-
Returns:
network byte ordered IPv6 address structure
-
-

- - - - -
- - - - - - - - - - -
int libnet_plist_chain_dump libnet_plist_t *  plist  ) 
-
- - - - - -
-   - - -

-Runs through the port list and prints the contents of the port list chain list to stdout.

Parameters:
- - -
plist previously created portlist
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - -
char* libnet_plist_chain_dump_string libnet_plist_t *  plist  ) 
-
- - - - - -
-   - - -

-Runs through the port list and prints the contents of the port list chain list to string. This function uses strdup and is not re-entrant. It also has a memory leak and should not really be used.

Parameters:
- - -
plist previously created portlist
-
-
Returns:
a printable string containing the port list contents on success NULL on error
-
-

- - - - -
- - - - - - - - - - -
int libnet_plist_chain_free libnet_plist_t *  plist  ) 
-
- - - - - -
-   - - -

-Frees all memory associated with port list chain.

Parameters:
- - -
plist previously created portlist
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
int libnet_plist_chain_new libnet_t *  l,
libnet_plist_t **  plist,
char *  token_list
-
- - - - - -
-   - - -

-Creates a new port list. Port list chains are useful for TCP and UDP-based applications that need to send packets to a range of ports (contiguous or otherwise). The port list chain, which token_list points to, should contain a series of int8_tacters from the following list: "0123456789,-" of the general format "x - y, z", where "xyz" are port numbers between 0 and 65,535. plist points to the front of the port list chain list for use in further libnet_plist_chain() functions. Upon success, the function returns 1. Upon failure, the function returns -1 and libnet_geterror() can tell you why.

Parameters:
- - - - -
l pointer to a libnet context
plist if successful, will refer to the portlist, if not, NULL
token_list string containing the port list primitive
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
int libnet_plist_chain_next_pair libnet_plist_t *  plist,
u_int16_t *  bport,
u_int16_t *  eport
-
- - - - - -
-   - - -

-Returns the next port list chain pair from the port list chain plist. bport and eport contain the starting port number and ending port number, respectively. Upon success, the function returns 1 and fills in the port variables; however, if the list is empty, the function returns 0 and sets both port variables to 0. Upon failure, the function returns -1.

Parameters:
- - - - -
plist previously created portlist
bport will contain the beginning port number or 0
eport will contain the ending port number or 0
-
-
Returns:
1 on success, 0 if empty, -1 on failure
-
-

- - - - -
- - - - - - - - - - -
int libnet_seed_prand libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Seeds the psuedo-random number generator.

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - -
void libnet_stats libnet_t *  l,
struct libnet_stats *  ls
-
- - - - - -
-   - - -

-Fills in a libnet_stats structure with packet injection statistics (packets written, bytes written, packet sending errors).

Parameters:
- - - -
l pointer to a libnet context
ls pointer to a libnet statistics structure
-
-
-

- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - -
int libnet_toggle_checksum libnet_t *  l,
libnet_ptag_t  ptag,
int  mode
-
- - - - - -
-   - - -

-If a given protocol header is built with the checksum field set to "0", by default libnet will calculate the header checksum prior to injection. If the header is set to any other value, by default libnet will not calculate the header checksum. To over-ride this behavior, use libnet_toggle_checksum(). Switches auto-checksumming on or off for the specified ptag. If mode is set to LIBNET_ON, libnet will mark the specificed ptag to calculate a checksum for the ptag prior to injection. This assumes that the ptag refers to a protocol that has a checksum field. If mode is set to LIBNET_OFF, libnet will clear the checksum flag and no checksum will be computed prior to injection. This assumes that the programmer will assign a value (zero or otherwise) to the checksum field. Often times this is useful if a precomputed checksum or some other predefined value is going to be used. Note that when libnet is initialized with LIBNET_RAW4, the IPv4 header checksum will always be computed by the kernel prior to injection, regardless of what the programmer sets.

Parameters:
- - - - -
l pointer to a libnet context
ptag the ptag reference number
mode LIBNET_ON or LIBNET_OFF
-
-
Returns:
1 on success, -1 on failure
-
-

- - - - -
- - - - - - - - - - -
int libnet_write libnet_t *  l  ) 
-
- - - - - -
-   - - -

-Writes a prebuilt packet to the network. The function assumes that l was previously initialized (via a call to libnet_init()) and that a previously constructed packet has been built inside this context (via one or more calls to the libnet_build* family of functions) and is ready to go. Depending on how libnet was initialized, the function will write the packet to the wire either via the raw or link layer interface. The function will also bump up the internal libnet stat counters which are retrievable via libnet_stats().

Parameters:
- - -
l pointer to a libnet context
-
-
Returns:
the number of bytes written, -1 on error
-
-


Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-headers_8h-source.html b/libnet/doc/html/libnet-headers_8h-source.html deleted file mode 100644 index 1aaa4d1..0000000 --- a/libnet/doc/html/libnet-headers_8h-source.html +++ /dev/null @@ -1,1655 +0,0 @@ - - -libnet: libnet-headers.h Source File - - - - -

libnet-headers.h

Go to the documentation of this file.
00001 /*
-00002  *  $Id: libnet-headers.h,v 1.13 2004/03/01 20:26:12 mike Exp $
-00003  *
-00004  *  libnet-headers.h - Network routine library headers header file
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  * 1. Redistributions of source code must retain the above copyright
-00013  *    notice, this list of conditions and the following disclaimer.
-00014  * 2. Redistributions in binary form must reproduce the above copyright
-00015  *    notice, this list of conditions and the following disclaimer in the
-00016  *    documentation and/or other materials provided with the distribution.
-00017  *
-00018  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00019  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00020  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00021  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00022  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00023  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00024  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00025  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00026  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00027  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00028  * SUCH DAMAGE.
-00029  *
-00030  */
-00031 
-00032 #ifndef __LIBNET_HEADERS_H
-00033 #define __LIBNET_HEADERS_H
-00034 
-00042 #define LIBNET_802_1Q_H         0x12    
-00043 #define LIBNET_802_1X_H         0x04    
-00044 #define LIBNET_802_2_H          0x03    
-00045 #define LIBNET_802_2SNAP_H      0x08    
-00046 #define LIBNET_802_3_H          0x0e    
-00047 #define LIBNET_ARP_H            0x08    
-00048 #define LIBNET_ARP_ETH_IP_H     0x1c    
-00049 #define LIBNET_BGP4_HEADER_H    0x13    
-00050 #define LIBNET_BGP4_OPEN_H      0x0a    
-00051 #define LIBNET_BGP4_UPDATE_H    0x04    
-00052 #define LIBNET_BGP4_NOTIFICATION_H 0x02 
-00053 #define LIBNET_CDP_H            0x08    
-00054 #define LIBNET_DHCPV4_H         0xf0    
-00055 #define LIBNET_UDP_DNSV4_H      0x0c    
-00056 #define LIBNET_TCP_DNSV4_H      0x0e    
-00057 #define LIBNET_ETH_H            0x0e    
-00058 #define LIBNET_FDDI_H           0x15    
-00059 #define LIBNET_ICMPV4_H         0x04    
-00060 #define LIBNET_ICMPV4_ECHO_H    0x08    
-00061 #define LIBNET_ICMPV4_MASK_H    0x0c    
-00062 #define LIBNET_ICMPV4_UNREACH_H  0x08   
-00063 #define LIBNET_ICMPV4_TIMXCEED_H 0x08   
-00064 #define LIBNET_ICMPV4_REDIRECT_H 0x08   
-00065 #define LIBNET_ICMPV4_TS_H      0x14    
-00066 #define LIBNET_ICMPV6_H         0x08    
-00067 #define LIBNET_IGMP_H           0x08    
-00068 #define LIBNET_IPV4_H           0x14    
-00069 #define LIBNET_IPV6_H           0x28    
-00070 #define LIBNET_IPV6_FRAG_H      0x08    
-00071 #define LIBNET_IPV6_ROUTING_H   0x04    
-00072 #define LIBNET_IPV6_DESTOPTS_H  0x02    
-00073 #define LIBNET_IPV6_HBHOPTS_H   0x02    
-00074 #define LIBNET_IPSEC_ESP_HDR_H  0x0c    
-00075 #define LIBNET_IPSEC_ESP_FTR_H  0x02    
-00076 #define LIBNET_IPSEC_AH_H       0x10    
-00077 #define LIBNET_ISL_H            0x1a    
-00078 #define LIBNET_GRE_H            0x04    
-00079 #define LIBNET_GRE_SRE_H        0x04    
-00080 #define LIBNET_MPLS_H           0x04    
-00081 #define LIBNET_OSPF_H           0x10    
-00082 #define LIBNET_OSPF_HELLO_H     0x18    
-00083 #define LIBNET_OSPF_DBD_H       0x08    
-00084 #define LIBNET_OSPF_LSR_H       0x0c    
-00085 #define LIBNET_OSPF_LSU_H       0x04    
-00086 #define LIBNET_OSPF_LSA_H       0x14    
-00087 #define LIBNET_OSPF_AUTH_H      0x08    
-00088 #define LIBNET_OSPF_CKSUM       0x10    
-00089 #define LIBNET_OSPF_LS_RTR_H    0x10    
-00090 #define LIBNET_OSPF_LS_NET_H    0x08    
-00091 #define LIBNET_OSPF_LS_SUM_H    0x0c    
-00092 #define LIBNET_OSPF_LS_AS_EXT_H 0x10    
-00093 #define LIBNET_NTP_H            0x30    
-00094 #define LIBNET_RIP_H            0x18    
-00095 #define LIBNET_RPC_CALL_H       0x28    
-00098 #define LIBNET_RPC_CALL_TCP_H   0x2c    
-00101 #define LIBNET_SEBEK_H          0x30    /* sebek header:          48 bytes */   
-00102 #define LIBNET_STP_CONF_H       0x23    
-00103 #define LIBNET_STP_TCN_H        0x04    
-00104 #define LIBNET_TOKEN_RING_H     0x16    
-00105 #define LIBNET_TCP_H            0x14    
-00106 #define LIBNET_UDP_H            0x08    
-00107 #define LIBNET_VRRP_H           0x08    
-00113 struct libnet_802_1q_hdr
-00114 {
-00115     u_int8_t vlan_dhost[ETHER_ADDR_LEN];  
-00116     u_int8_t vlan_shost[ETHER_ADDR_LEN];  
-00117     u_int16_t vlan_tpi;                   
-00118     u_int16_t vlan_priority_c_vid;        
-00119 #define LIBNET_802_1Q_PRIMASK   0x0007    
-00120 #define LIBNET_802_1Q_CFIMASK   0x0001    
-00121 #define LIBNET_802_1Q_VIDMASK   0x0fff    
-00122     u_int16_t vlan_len;                   
-00123 };  
-00124 
-00129 struct libnet_802_1x_hdr
-00130 {
-00131     u_int8_t dot1x_version;               
-00132     u_int8_t dot1x_type;                  
-00133 #define LIBNET_802_1X_PACKET    0x00      
-00134 #define LIBNET_802_1X_START     0x01      
-00135 #define LIBNET_802_1X_LOGOFF    0x02      
-00136 #define LIBNET_802_1X_KEY       0x03      
-00137 #define LIBNET_802_1X_ENCASFAL  0x04      
-00138     u_int16_t dot1x_length;               
-00139 };  
-00140 
-00141 /*
-00142  *  IEEE 802.2 LLC header
-00143  *  Link Layer Control
-00144  *  static header size: 3 bytes
-00145  */
-00146 struct libnet_802_2_hdr
-00147 {
-00148     u_int8_t llc_dsap;            /* destination service access point */
-00149     u_int8_t llc_ssap;            /* source service access point */
-00150 #define LIBNET_SAP_STP          0x42
-00151 #define LIBNET_SAP_SNAP         0xaa
-00152     u_int8_t llc_control;         /* control field */
-00153 };
-00154 
-00155 
-00156 /*
-00157  *  IEEE 802.2 LLC/SNAP header
-00158  *  SubNetwork Attachment Point
-00159  *  static header size: 8 bytes
-00160  */
-00161 struct libnet_802_2snap_hdr
-00162 {
-00163     u_int8_t snap_dsap;           /* destination service access point */
-00164     u_int8_t snap_ssap;           /* destination service access point */
-00165     u_int8_t snap_control;        /* control field */
-00166     u_int8_t snap_oui[3];         /* OUI */
-00167     u_int16_t snap_type;          /* type */
-00168 };
-00169 
-00170 
-00171 /*
-00172  *  802.3 header
-00173  *  IEEE Ethernet
-00174  *  Static header size: 14 bytes
-00175  */
-00176 struct libnet_802_3_hdr
-00177 {
-00178     u_int8_t  _802_3_dhost[ETHER_ADDR_LEN];/* destination ethernet address */
-00179     u_int8_t  _802_3_shost[ETHER_ADDR_LEN];/* source ethernet address */
-00180     u_int16_t _802_3_len;                 /* packet type ID */
-00181 };
-00182 
-00183 
-00184 /* 
-00185  *  ARP header
-00186  *  Address Resolution Protocol
-00187  *  Base header size: 8 bytes
-00188  */
-00189 struct libnet_arp_hdr
-00190 {
-00191     u_int16_t ar_hrd;         /* format of hardware address */
-00192 #define ARPHRD_NETROM   0   /* from KA9Q: NET/ROM pseudo */
-00193 #define ARPHRD_ETHER    1   /* Ethernet 10Mbps */
-00194 #define ARPHRD_EETHER   2   /* Experimental Ethernet */
-00195 #define ARPHRD_AX25     3   /* AX.25 Level 2 */
-00196 #define ARPHRD_PRONET   4   /* PROnet token ring */
-00197 #define ARPHRD_CHAOS    5   /* Chaosnet */
-00198 #define ARPHRD_IEEE802  6   /* IEEE 802.2 Ethernet/TR/TB */
-00199 #define ARPHRD_ARCNET   7   /* ARCnet */
-00200 #define ARPHRD_APPLETLK 8   /* APPLEtalk */
-00201 #define ARPHRD_LANSTAR  9   /* Lanstar */
-00202 #define ARPHRD_DLCI     15  /* Frame Relay DLCI */
-00203 #define ARPHRD_ATM      19  /* ATM */
-00204 #define ARPHRD_METRICOM 23  /* Metricom STRIP (new IANA id) */
-00205 #define ARPHRD_IPSEC    31  /* IPsec tunnel */
-00206     u_int16_t ar_pro;         /* format of protocol address */
-00207     u_int8_t  ar_hln;         /* length of hardware address */
-00208     u_int8_t  ar_pln;         /* length of protocol addres */
-00209     u_int16_t ar_op;          /* operation type */
-00210 #define ARPOP_REQUEST    1  /* req to resolve address */
-00211 #define ARPOP_REPLY      2  /* resp to previous request */
-00212 #define ARPOP_REVREQUEST 3  /* req protocol address given hardware */
-00213 #define ARPOP_REVREPLY   4  /* resp giving protocol address */
-00214 #define ARPOP_INVREQUEST 8  /* req to identify peer */
-00215 #define ARPOP_INVREPLY   9  /* resp identifying peer */
-00216     /* address information allocated dynamically */
-00217 };
-00218 
-00219 /*
-00220  * BGP4 header
-00221  * Border Gateway Protocol 4
-00222  * Base header size : 19 bytes
-00223  */
-00224 struct libnet_bgp4_header_hdr
-00225 {
-00226 #define LIBNET_BGP4_MARKER_SIZE   16
-00227     u_int8_t marker[LIBNET_BGP4_MARKER_SIZE];
-00228     u_int16_t len;
-00229     u_int8_t type;
-00230 #define LIBNET_BGP4_OPEN          1
-00231 #define LIBNET_BGP4_UPDATE        2
-00232 #define LIBNET_BGP4_NOTIFICATION  3
-00233 #define LIBNET_BGP4_KEEPALIVE     4
-00234 };
-00235 
-00236 /*
-00237  * BGP4 open header
-00238  * Border Gateway Protocol 4
-00239  * Base header size : 10 bytes
-00240  */
-00241 struct libnet_bgp4_open_hdr
-00242 {
-00243     u_int8_t version;
-00244     u_int16_t src_as;
-00245     u_int16_t hold_time;
-00246     u_int32_t bgp_id;
-00247     u_int8_t opt_len;
-00248 };
-00249 
-00250 /*
-00251  * BGP4 notification message
-00252  *
-00253  * Border Gateway Protocol 4
-00254  * Base header size : 2 bytes
-00255  *
-00256  * Use payload if you need data
-00257  */
-00258 struct libnet_bgp4_notification_hdr
-00259 {
-00260 #define LIBNET_BGP4_MESSAGE_HEADER_ERROR  1
-00261 #define LIBNET_BGP4_OPEN_MESSAGE_ERROR    2
-00262 #define LIBNET_BGP4_UPDATE_MESSAGE_ERROR  3
-00263 #define LIBNET_BGP4_HOLD_TIMER_EXPIRED    4
-00264 #define LIBNET_BGP4_FINITE_STATE__ERROR   5
-00265 #define LIBNET_BGP4_CEASE                 6
-00266     u_int8_t err_code;
-00267 
-00268 /* Message Header Error subcodes */
-00269 #define LIBNET_BGP4_CONNECTION_NOT_SYNCHRONIZED    1
-00270 #define LIBNET_BGP4_BAD_MESSAGE_LENGTH             2
-00271 #define LIBNET_BGP4_BAD_MESSAGE_TYPE               3
-00272 /* OPEN Message Error subcodes */
-00273 #define LIBNET_BGP4_UNSUPPORTED_VERSION_NUMBER     1
-00274 #define LIBNET_BGP4_BAD_PEER_AS                    2
-00275 #define LIBNET_BGP4_BAD_BGP_IDENTIFIER             3
-00276 #define LIBNET_BGP4_UNSUPPORTED_OPTIONAL_PARAMETER 4
-00277 #define LIBNET_BGP4_AUTHENTICATION_FAILURE         5
-00278 #define LIBNET_BGP4_UNACCEPTABLE_HOLD_TIME         6
-00279 /* UPDATE Message Error subcodes */
-00280 #define LIBNET_BGP4_MALFORMED_ATTRIBUTE_LIST
-00281 #define LIBNET_BGP4_UNRECOGNIZED_WELL_KNOWN_ATTRIBUTE
-00282 #define LIBNET_BGP4_MISSING_WELL_KNOWN_ATTRIBUTE
-00283 #define LIBNET_BGP4_ATTRIBUTE_FLAGS_ERROR
-00284 #define LIBNET_BGP4_ATTRIBUTE_LENGTH_ERROR
-00285 #define LIBNET_BGP4_INVALID_ORIGIN_ATTRIBUTE
-00286 #define LIBNET_BGP4_AS_ROUTING_LOOP
-00287 #define LIBNET_BGP4_INVALID_NEXT_HOP_ATTRIBUTE
-00288 #define LIBNET_BGP4_OPTIONAL_ATTRIBUTE_ERROR
-00289 #define LIBNET_BGP4_INVALID_NETWORK_FIELD
-00290 #define LIBNET_BGP4_MALFORMED_AS_PATH
-00291     u_int8_t err_subcode;
-00292 };
-00293 
-00294 
-00295 
-00296 /*
-00297  *  CDP header
-00298  *  Cisco Discovery Protocol
-00299  *  Base header size: 8 bytes
-00300  */
-00301 
-00302 /*
-00303  *  For checksum stuff -- IANA says 135-254 is "unassigned" as of 12.2001.
-00304  *  Let's hope this one stays that way for a while!
-00305  */
-00306 #define LIBNET_PROTO_CDP    200
-00307 struct libnet_cdp_hdr
-00308 {
-00309     u_int8_t cdp_version;     /* version (should always be 0x01) */
-00310     u_int8_t cdp_ttl;         /* time reciever should hold info in this packet */
-00311     u_int16_t cdp_sum;        /* checksum */
-00312     u_int16_t cdp_type;       /* type */
-00313 #define LIBNET_CDP_DEVID    0x1 /* device id */
-00314 #define LIBNET_CDP_ADDRESS  0x2 /* address */
-00315 #define LIBNET_CDP_PORTID   0x3 /* port id */
-00316 #define LIBNET_CDP_CAPABIL  0x4 /* capabilities */
-00317 #define LIBNET_CDP_VERSION  0x5 /* version */
-00318 #define LIBNET_CDP_PLATFORM 0x6 /* platform */
-00319 #define LIBNET_CDP_IPPREFIX 0x7 /* ip prefix */
-00320     u_int16_t cdp_len;        /* type + length + value */
-00321     /* value information done dynamically */
-00322 
-00323 /* CDP capabilities */
-00324 #define LIBNET_CDP_CAP_L3R  0x01/* performs level 3 routing */
-00325 #define LIBNET_CDP_CAP_L2B  0x02/* performs level 2 transparent bridging */
-00326 #define LIBNET_CDP_CAP_L2SRB 0x04/* performs level 2 sourceroute bridging */
-00327 #define LIBNET_CDP_CAP_L2S  0x08/* performs level 2 switching */
-00328 #define LIBNET_CDP_CAP_SR   0x10/* sends and recieves packets on a network */
-00329 #define LIBNET_CDP_CAP_NOI  0x20/* does not forward IGMP on non-router ports */
-00330 #define LIBNET_CDP_CAP_L1F  0x40/* provides level 1 functionality */
-00331 };
-00332 
-00333 
-00334 /*
-00335  *  Used as an overlay for type/len/values
-00336  */
-00337 struct libnet_cdp_value_hdr
-00338 {
-00339     u_int16_t cdp_type;
-00340     u_int16_t cdp_len;
-00341 };
-00342 
-00343 
-00344 /*
-00345  *  DHCP header
-00346  *  Dynamic Host Configuration Protocol
-00347  *  Static header size: f0 bytes
-00348  */
-00349 struct libnet_dhcpv4_hdr
-00350 {
-00351     u_int8_t dhcp_opcode;     /* opcode */
-00352 #define LIBNET_DHCP_REQUEST 0x1
-00353 #define LIBNET_DHCP_REPLY   0x2
-00354     u_int8_t dhcp_htype;      /* hardware address type */
-00355     u_int8_t dhcp_hlen;       /* hardware address length */
-00356     u_int8_t dhcp_hopcount;   /* used by proxy servers */
-00357     u_int32_t dhcp_xid;        /* transaction ID */
-00358     u_int16_t dhcp_secs;      /* number of seconds since trying to bootstrap */
-00359     u_int16_t dhcp_flags;     /* flags for DHCP, unused for BOOTP */
-00360     u_int32_t dhcp_cip;        /* client's IP */
-00361     u_int32_t dhcp_yip;        /* your IP */
-00362     u_int32_t dhcp_sip;        /* server's IP */
-00363     u_int32_t dhcp_gip;        /* gateway IP */
-00364     u_int8_t dhcp_chaddr[16]; /* client hardware address */
-00365     u_int8_t dhcp_sname[64];  /* server host name */
-00366     u_int8_t dhcp_file[128];  /* boot file name */
-00367     u_int32_t dhcp_magic;      /* BOOTP magic header */
-00368 #define DHCP_MAGIC                  0x63825363
-00369 #define LIBNET_BOOTP_MIN_LEN        0x12c
-00370 #define LIBNET_DHCP_PAD             0x00
-00371 #define LIBNET_DHCP_SUBNETMASK      0x01
-00372 #define LIBNET_DHCP_TIMEOFFSET      0x02
-00373 #define LIBNET_DHCP_ROUTER          0x03
-00374 #define LIBNET_DHCP_TIMESERVER      0x04
-00375 #define LIBNET_DHCP_NAMESERVER      0x05
-00376 #define LIBNET_DHCP_DNS             0x06
-00377 #define LIBNET_DHCP_LOGSERV         0x07
-00378 #define LIBNET_DHCP_COOKIESERV      0x08
-00379 #define LIBNET_DHCP_LPRSERV         0x09
-00380 #define LIBNET_DHCP_IMPSERV         0x0a
-00381 #define LIBNET_DHCP_RESSERV         0x0b
-00382 #define LIBNET_DHCP_HOSTNAME        0x0c
-00383 #define LIBNET_DHCP_BOOTFILESIZE    0x0d
-00384 #define LIBNET_DHCP_DUMPFILE        0x0e
-00385 #define LIBNET_DHCP_DOMAINNAME      0x0f
-00386 #define LIBNET_DHCP_SWAPSERV        0x10
-00387 #define LIBNET_DHCP_ROOTPATH        0x11
-00388 #define LIBNET_DHCP_EXTENPATH       0x12
-00389 #define LIBNET_DHCP_IPFORWARD       0x13
-00390 #define LIBNET_DHCP_SRCROUTE        0x14
-00391 #define LIBNET_DHCP_POLICYFILTER    0x15
-00392 #define LIBNET_DHCP_MAXASMSIZE      0x16
-00393 #define LIBNET_DHCP_IPTTL           0x17
-00394 #define LIBNET_DHCP_MTUTIMEOUT      0x18
-00395 #define LIBNET_DHCP_MTUTABLE        0x19
-00396 #define LIBNET_DHCP_MTUSIZE         0x1a
-00397 #define LIBNET_DHCP_LOCALSUBNETS    0x1b
-00398 #define LIBNET_DHCP_BROADCASTADDR   0x1c
-00399 #define LIBNET_DHCP_DOMASKDISCOV    0x1d
-00400 #define LIBNET_DHCP_MASKSUPPLY      0x1e
-00401 #define LIBNET_DHCP_DOROUTEDISC     0x1f
-00402 #define LIBNET_DHCP_ROUTERSOLICIT   0x20
-00403 #define LIBNET_DHCP_STATICROUTE     0x21
-00404 #define LIBNET_DHCP_TRAILERENCAP    0x22
-00405 #define LIBNET_DHCP_ARPTIMEOUT      0x23
-00406 #define LIBNET_DHCP_ETHERENCAP      0x24
-00407 #define LIBNET_DHCP_TCPTTL          0x25
-00408 #define LIBNET_DHCP_TCPKEEPALIVE    0x26
-00409 #define LIBNET_DHCP_TCPALIVEGARBAGE 0x27
-00410 #define LIBNET_DHCP_NISDOMAIN       0x28
-00411 #define LIBNET_DHCP_NISSERVERS      0x29
-00412 #define LIBNET_DHCP_NISTIMESERV     0x2a
-00413 #define LIBNET_DHCP_VENDSPECIFIC    0x2b
-00414 #define LIBNET_DHCP_NBNS            0x2c
-00415 #define LIBNET_DHCP_NBDD            0x2d
-00416 #define LIBNET_DHCP_NBTCPIP         0x2e
-00417 #define LIBNET_DHCP_NBTCPSCOPE      0x2f
-00418 #define LIBNET_DHCP_XFONT           0x30
-00419 #define LIBNET_DHCP_XDISPLAYMGR     0x31
-00420 #define LIBNET_DHCP_DISCOVERADDR    0x32
-00421 #define LIBNET_DHCP_LEASETIME       0x33
-00422 #define LIBNET_DHCP_OPTIONOVERLOAD  0x34
-00423 #define LIBNET_DHCP_MESSAGETYPE     0x35
-00424 #define LIBNET_DHCP_SERVIDENT       0x36
-00425 #define LIBNET_DHCP_PARAMREQUEST    0x37
-00426 #define LIBNET_DHCP_MESSAGE         0x38
-00427 #define LIBNET_DHCP_MAXMSGSIZE      0x39
-00428 #define LIBNET_DHCP_RENEWTIME       0x3a
-00429 #define LIBNET_DHCP_REBINDTIME      0x3b
-00430 #define LIBNET_DHCP_CLASSSID        0x3c
-00431 #define LIBNET_DHCP_CLIENTID        0x3d
-00432 #define LIBNET_DHCP_NISPLUSDOMAIN   0x40
-00433 #define LIBNET_DHCP_NISPLUSSERVERS  0x41
-00434 #define LIBNET_DHCP_MOBILEIPAGENT   0x44
-00435 #define LIBNET_DHCP_SMTPSERVER      0x45
-00436 #define LIBNET_DHCP_POP3SERVER      0x46
-00437 #define LIBNET_DHCP_NNTPSERVER      0x47
-00438 #define LIBNET_DHCP_WWWSERVER       0x48
-00439 #define LIBNET_DHCP_FINGERSERVER    0x49
-00440 #define LIBNET_DHCP_IRCSERVER       0x4a
-00441 #define LIBNET_DHCP_STSERVER        0x4b
-00442 #define LIBNET_DHCP_STDASERVER      0x4c
-00443 #define LIBNET_DHCP_END             0xff
-00444 
-00445 #define LIBNET_DHCP_MSGDISCOVER     0x01
-00446 #define LIBNET_DHCP_MSGOFFER        0x02
-00447 #define LIBNET_DHCP_MSGREQUEST      0x03
-00448 #define LIBNET_DHCP_MSGDECLINE      0x04
-00449 #define LIBNET_DHCP_MSGACK          0x05
-00450 #define LIBNET_DHCP_MSGNACK         0x06
-00451 #define LIBNET_DHCP_MSGRELEASE      0x07
-00452 #define LIBNET_DHCP_MSGINFORM       0x08
-00453 };
-00454 
-00455 
-00456 /*
-00457  *  Base DNSv4 header
-00458  *  Domain Name System
-00459  *  Base header size: 12/14 bytes
-00460  */
-00461 /* this little guy got left out in the cold */
-00462 #define LIBNET_DNS_H LIBNET_UDP_DNSV4_H
-00463 struct libnet_dnsv4_hdr
-00464 {
-00465     u_int16_t h_len;          /* length of the packet - only used with TCP */
-00466     u_int16_t id;             /* DNS packet ID */
-00467     u_int16_t flags;          /* DNS flags */
-00468     u_int16_t num_q;          /* Number of questions */
-00469     u_int16_t num_answ_rr;    /* Number of answer resource records */
-00470     u_int16_t num_auth_rr;    /* Number of authority resource records */
-00471     u_int16_t num_addi_rr;    /* Number of additional resource records */
-00472 };
-00473 
-00474 
-00475 /*
-00476  *  Ethernet II header
-00477  *  Static header size: 14 bytes
-00478  */
-00479 struct libnet_ethernet_hdr
-00480 {
-00481     u_int8_t  ether_dhost[ETHER_ADDR_LEN];/* destination ethernet address */
-00482     u_int8_t  ether_shost[ETHER_ADDR_LEN];/* source ethernet address */
-00483     u_int16_t ether_type;                 /* protocol */
-00484 };
-00485 
-00486 #ifndef ETHERTYPE_PUP
-00487 #define ETHERTYPE_PUP           0x0200  /* PUP protocol */
-00488 #endif
-00489 #ifndef ETHERTYPE_IP
-00490 #define ETHERTYPE_IP            0x0800  /* IP protocol */
-00491 #endif
-00492 #ifndef ETHERTYPE_ARP
-00493 #define ETHERTYPE_ARP           0x0806  /* addr. resolution protocol */
-00494 #endif
-00495 #ifndef ETHERTYPE_REVARP
-00496 #define ETHERTYPE_REVARP        0x8035  /* reverse addr. resolution protocol */
-00497 #endif
-00498 #ifndef ETHERTYPE_VLAN
-00499 #define ETHERTYPE_VLAN          0x8100  /* IEEE 802.1Q VLAN tagging */
-00500 #endif
-00501 #ifndef ETHERTYPE_EAP
-00502 #define ETHERTYPE_EAP           0x888e  /* IEEE 802.1X EAP authentication */
-00503 #endif
-00504 #ifndef ETHERTYPE_MPLS
-00505 #define ETHERTYPE_MPLS          0x8847  /* MPLS */
-00506 #endif
-00507 #ifndef ETHERTYPE_LOOPBACK
-00508 #define ETHERTYPE_LOOPBACK      0x9000  /* used to test interfaces */
-00509 #endif
-00510 
-00511 struct libnet_ether_addr
-00512 {
-00513     u_int8_t  ether_addr_octet[6];        /* Ethernet address */
-00514 };
-00515 
-00516 /*
-00517  *  Fiber Distributed Data Interface header
-00518  *
-00519  *  Static header size: 21 bytes (LLC and 48-bit address addr only)
-00520  *
-00521  *  Note: Organization field is 3 bytes which throws off the
-00522  *        alignment of type.  Therefore fddi_type (19 bytes in) 
-00523  *        is specified as two u_int8_ts.
-00524  */
-00525 struct libnet_fddi_hdr
-00526 {
-00527     u_int8_t  fddi_frame_control;                      /* Class/Format/Priority */
-00528 #define LIBNET_FDDI_LLC_FRAME  0x10
-00529 #define LIBNET_FDDI_48BIT_ADDR 0x40
-00530 #define LIBNET_FDDI_FC_REQD    LIBNET_FDDI_LLC_FRAME | LIBNET_FDDI_48BIT_ADDR 
-00531     u_int8_t  fddi_dhost[FDDI_ADDR_LEN];               /* destination fddi address */
-00532     u_int8_t  fddi_shost[FDDI_ADDR_LEN];               /* source fddi address */
-00533     u_int8_t  fddi_llc_dsap;                           /* DSAP */
-00534     u_int8_t  fddi_llc_ssap;                           /* SSAP */
-00535     u_int8_t  fddi_llc_control_field;                  /* Class/Format/Priority */
-00536     u_int8_t  fddi_llc_org_code[LIBNET_ORG_CODE_SIZE]; /* Organization Code 3-bytes */
-00537     u_int8_t  fddi_type;                               /* Protocol Type */
-00538     u_int8_t  fddi_type1;                              /* see note above. */
-00539 #define FDDI_TYPE_IP            0x0800  /* IP protocol */
-00540 #define FDDI_TYPE_ARP           0x0806  /* addr. resolution protocol */
-00541 #define FDDI_TYPE_REVARP        0x8035  /* reverse addr. resolution protocol */
-00542 };
-00543 
-00544 
-00545 struct libnet_fddi_addr
-00546 {
-00547     u_int8_t  fddi_addr_octet[6];        /* FDDI address */
-00548 };
-00549 
-00550 
-00551 /*
-00552  * GRE header - RFC 1701 & 2637
-00553  * Generic Routing Encapsulation (GRE) 
-00554  * Base header size: 4 bytes
-00555  */
-00556 struct libnet_gre_hdr
-00557 {
-00558     u_int16_t flags_ver;
-00559 #define GRE_CSUM                            0x8000
-00560 #define GRE_ROUTING                         0x4000
-00561 #define GRE_KEY                             0x2000
-00562 #define GRE_SEQ                             0x1000
-00563 #define GRE_STRICT                          0x0800
-00564 #define GRE_REC                             0x0700
-00565 #define GRE_ACK                             0x0080
-00566 
-00567 #define GRE_FLAGS_MASK                          0x00F8
-00568 #define GRE_VERSION_MASK                        0x0007
-00569 
-00570 #define GRE_VERSION_0                           0x0000
-00571 #define GRE_VERSION_1                           0x0001
-00572 
-00573     u_int16_t type;
-00574 #define GRE_SNA                                 0x0004
-00575 #define GRE_OSI_NETWORK_LAYER                   0x00FE
-00576 #define GRE_PUP                                 0x0200
-00577 #define GRE_XNS                                 0x0600
-00578 #define GRE_IP                                  0x0800
-00579 #define GRE_CHAOS                               0x0804
-00580 #define GRE_RFC_826_ARP                         0x0806
-00581 #define GRE_FRAME_RELAY_ARP                     0x0808
-00582 #define GRE_VINES                               0x0BAD
-00583 #define GRE_VINES_ECHO                          0x0BAE
-00584 #define GRE_VINES_LOOPBACK                      0x0BAF
-00585 #define GRE_DECNET                              0x6003
-00586 #define GRE_TRANSPARENT_ETHERNET_BRIDGING       0x6558
-00587 #define GRE_RAW_FRAME_RELAY                     0x6559
-00588 #define GRE_APOLLO_DOMAIN                       0x8019
-00589 #define GRE_ETHERTALK                           0x809B
-00590 #define GRE_NOVELL_IPX                          0x8137
-00591 #define GRE_RFC_1144_TCP_IP_COMPRESSION         0x876B
-00592 #define GRE_IP_AUTONOMOUS_SYSTEMS               0x876C
-00593 #define GRE_SECURE_DATA                         0x876D
-00594 #define GRE_PPP                                 0x880b /* taken from RFC 2637 */
-00595 
-00596     union {
-00597     struct {
-00598         u_int16_t sum;  /* optional */
-00599         u_int16_t offset;    /* optional */
-00600         u_int32_t key;        /* optional */
-00601         u_int32_t seq;        /* optional */
-00602     } _gre;
-00603 
-00604     struct {
-00605         u_int16_t payload_s; /* optional */
-00606         u_int16_t callID;    /* optional */
-00607         u_int32_t seq;        /* optional */
-00608         u_int32_t ack;        /* optional */
-00609     } _egre;
-00610     }_data;
-00611 
-00612 #define gre_sum _data._gre.sum
-00613 #define gre_offset _data._gre.offset
-00614 #define gre_key _data._gre.key
-00615 #define gre_seq _data._gre.seq
-00616 
-00617 #define egre_payload_s _data._egre.payload_s
-00618 #define egre_callID _data._egre.callID
-00619 #define egre_seq _data._egre.seq
-00620 #define egre_ack _data._egre.ack
-00621 };
-00622 
-00623 
-00624 #ifndef IPPROTO_GRE
-00625 #define IPPROTO_GRE 47
-00626 #endif
-00627 
-00628 /*
-00629  * Source Route Entries (SRE)
-00630  * This is used for GRE as the Routing field is a list of SREs - RFC 1701
-00631  * Base header size: 4 bytes
-00632  */
-00633 struct libnet_gre_sre_hdr
-00634 {
-00635     u_int16_t af;  /* address familly */
-00636     u_int8_t sre_offset;
-00637     u_int8_t sre_length;
-00638     u_int8_t *routing;
-00639 };
-00640 
-00641 
-00642 /*
-00643  *  IPv4 header
-00644  *  Internet Protocol, version 4
-00645  *  Static header size: 20 bytes
-00646  */
-00647 struct libnet_ipv4_hdr
-00648 {
-00649 #if (LIBNET_LIL_ENDIAN)
-00650     u_int8_t ip_hl:4,      /* header length */
-00651            ip_v:4;         /* version */
-00652 #endif
-00653 #if (LIBNET_BIG_ENDIAN)
-00654     u_int8_t ip_v:4,       /* version */
-00655            ip_hl:4;        /* header length */
-00656 #endif
-00657     u_int8_t ip_tos;       /* type of service */
-00658 #ifndef IPTOS_LOWDELAY
-00659 #define IPTOS_LOWDELAY      0x10
-00660 #endif
-00661 #ifndef IPTOS_THROUGHPUT
-00662 #define IPTOS_THROUGHPUT    0x08
-00663 #endif
-00664 #ifndef IPTOS_RELIABILITY
-00665 #define IPTOS_RELIABILITY   0x04
-00666 #endif
-00667 #ifndef IPTOS_LOWCOST
-00668 #define IPTOS_LOWCOST       0x02
-00669 #endif
-00670     u_int16_t ip_len;         /* total length */
-00671     u_int16_t ip_id;          /* identification */
-00672     u_int16_t ip_off;
-00673 #ifndef IP_RF
-00674 #define IP_RF 0x8000        /* reserved fragment flag */
-00675 #endif
-00676 #ifndef IP_DF
-00677 #define IP_DF 0x4000        /* dont fragment flag */
-00678 #endif
-00679 #ifndef IP_MF
-00680 #define IP_MF 0x2000        /* more fragments flag */
-00681 #endif 
-00682 #ifndef IP_OFFMASK
-00683 #define IP_OFFMASK 0x1fff   /* mask for fragmenting bits */
-00684 #endif
-00685     u_int8_t ip_ttl;          /* time to live */
-00686     u_int8_t ip_p;            /* protocol */
-00687     u_int16_t ip_sum;         /* checksum */
-00688     struct in_addr ip_src, ip_dst; /* source and dest address */
-00689 };
-00690 
-00691 /*
-00692  *  IP options
-00693  */
-00694 #ifndef IPOPT_EOL
-00695 #define IPOPT_EOL       0   /* end of option list */
-00696 #endif
-00697 #ifndef IPOPT_NOP
-00698 #define IPOPT_NOP       1   /* no operation */
-00699 #endif   
-00700 #ifndef IPOPT_RR
-00701 #define IPOPT_RR        7   /* record packet route */
-00702 #endif
-00703 #ifndef IPOPT_TS
-00704 #define IPOPT_TS        68  /* timestamp */
-00705 #endif
-00706 #ifndef IPOPT_SECURITY
-00707 #define IPOPT_SECURITY  130 /* provide s,c,h,tcc */   
-00708 #endif
-00709 #ifndef IPOPT_LSRR
-00710 #define IPOPT_LSRR      131 /* loose source route */
-00711 #endif
-00712 #ifndef IPOPT_SATID
-00713 #define IPOPT_SATID     136 /* satnet id */
-00714 #endif
-00715 #ifndef IPOPT_SSRR
-00716 #define IPOPT_SSRR      137 /* strict source route */
-00717 #endif
-00718 
-00719 struct libnet_in6_addr
-00720 {
-00721     union
-00722     {
-00723         u_int8_t   __u6_addr8[16];
-00724         u_int16_t  __u6_addr16[8];
-00725         u_int32_t  __u6_addr32[4];
-00726     } __u6_addr;            /* 128-bit IP6 address */
-00727 };
-00728 #define libnet_s6_addr __u6_addr.__u6_addr8
-00729 
-00730 /*
-00731  *  IPv6 header
-00732  *  Internet Protocol, version 6
-00733  *  Static header size: 40 bytes
-00734  */
-00735 struct libnet_ipv6_hdr
-00736 {
-00737     u_int8_t ip_flags[4];     /* version, traffic class, flow label */
-00738     u_int16_t ip_len;         /* total length */
-00739     u_int8_t ip_nh;           /* next header */
-00740     u_int8_t ip_hl;           /* hop limit */
-00741     struct libnet_in6_addr ip_src, ip_dst; /* source and dest address */
-00742 
-00743 };
-00744 
-00745 /*
-00746  *  IPv6 frag header
-00747  *  Internet Protocol, version 6
-00748  *  Static header size: 8 bytes
-00749  */
-00750 #define LIBNET_IPV6_NH_FRAGMENT 44
-00751 struct libnet_ipv6_frag_hdr
-00752 {
-00753     u_int8_t ip_nh;          /* next header */
-00754     u_int8_t ip_reserved;    /* reserved */
-00755     u_int16_t ip_frag;       /* fragmentation stuff */
-00756     u_int32_t ip_id;         /* id */
-00757 };
-00758 
-00759 /*
-00760  *  IPv6 routing header
-00761  *  Internet Protocol, version 6
-00762  *  Base header size: 4 bytes
-00763  */
-00764 #define LIBNET_IPV6_NH_ROUTING  43
-00765 struct libnet_ipv6_routing_hdr
-00766 {
-00767     u_int8_t ip_nh;          /* next header */
-00768     u_int8_t ip_len;         /* length of header in 8 octet units (sans 1st) */
-00769     u_int8_t ip_rtype;       /* routing type */
-00770     u_int8_t ip_segments;    /* segments left */
-00771     /* routing information allocated dynamically */
-00772 };
-00773 
-00774 /*
-00775  *  IPv6 destination options header
-00776  *  Internet Protocol, version 6
-00777  *  Base header size: 2 bytes
-00778  */
-00779 #define LIBNET_IPV6_NH_DESTOPTS 60
-00780 struct libnet_ipv6_destopts_hdr
-00781 {
-00782     u_int8_t ip_nh;          /* next header */
-00783     u_int8_t ip_len;         /* length of header in 8 octet units (sans 1st) */
-00784     /* destination options information allocated dynamically */
-00785 };
-00786 
-00787 /*
-00788  *  IPv6 hop by hop options header
-00789  *  Internet Protocol, version 6
-00790  *  Base header size: 2 bytes
-00791  */
-00792 #define LIBNET_IPV6_NH_HBH      0
-00793 struct libnet_ipv6_hbhopts_hdr
-00794 {
-00795     u_int8_t ip_nh;          /* next header */
-00796     u_int8_t ip_len;         /* length of header in 8 octet units (sans 1st) */
-00797     /* destination options information allocated dynamically */
-00798 };
-00799 
-00800 /*
-00801  *  ICMP6 header
-00802  *  Internet Control Message Protocol v6
-00803  *  Base header size: 8 bytes
-00804  */
-00805 #ifndef IPPROTO_ICMP6
-00806 #define IPPROTO_ICMP6   0x3a
-00807 #endif
-00808 struct libnet_icmpv6_hdr
-00809 {
-00810     u_int8_t icmp_type;       /* ICMP type */
-00811 #ifndef ICMP6_ECHO
-00812 #define ICMP6_ECHO          128
-00813 #endif
-00814 #ifndef ICMP6_ECHOREPLY
-00815 #define ICMP6_ECHOREPLY     129
-00816 #endif
-00817 #ifndef ICMP6_UNREACH
-00818 #define ICMP6_UNREACH       1
-00819 #endif
-00820 #ifndef ICMP6_PKTTOOBIG
-00821 #define ICMP6_PKTTOOBIG     2
-00822 #endif
-00823 #ifndef ICMP6_TIMXCEED
-00824 #define ICMP6_TIMXCEED      3
-00825 #endif
-00826 #ifndef ICMP6_PARAMPROB
-00827 #define ICMP6_PARAMPROB     4
-00828 #endif
-00829     u_int8_t icmp_code;       /* ICMP code */
-00830     u_int16_t icmp_sum;       /* ICMP Checksum */
-00831     u_int16_t id;             /* ICMP id */
-00832     u_int16_t seq;            /* ICMP sequence number */
-00833 };
-00834 
-00835 
-00836 
-00837 /*
-00838  *  ICMP header
-00839  *  Internet Control Message Protocol
-00840  *  Base header size: 4 bytes
-00841  */
-00842 struct libnet_icmpv4_hdr
-00843 {
-00844     u_int8_t icmp_type;       /* ICMP type */
-00845 #ifndef     ICMP_ECHOREPLY
-00846 #define     ICMP_ECHOREPLY                  0
-00847 #endif
-00848 #ifndef     ICMP_UNREACH
-00849 #define     ICMP_UNREACH                    3
-00850 #endif
-00851 #ifndef     ICMP_SOURCEQUENCH
-00852 #define     ICMP_SOURCEQUENCH               4
-00853 #endif
-00854 #ifndef     ICMP_REDIRECT
-00855 #define     ICMP_REDIRECT                   5
-00856 #endif
-00857 #ifndef     ICMP_ECHO
-00858 #define     ICMP_ECHO                       8
-00859 #endif
-00860 #ifndef     ICMP_ROUTERADVERT
-00861 #define     ICMP_ROUTERADVERT               9
-00862 #endif
-00863 #ifndef     ICMP_ROUTERSOLICIT
-00864 #define     ICMP_ROUTERSOLICIT              10
-00865 #endif
-00866 #ifndef     ICMP_TIMXCEED
-00867 #define     ICMP_TIMXCEED                   11
-00868 #endif
-00869 #ifndef     ICMP_PARAMPROB
-00870 #define     ICMP_PARAMPROB                  12
-00871 #endif
-00872 #ifndef     ICMP_TSTAMP
-00873 #define     ICMP_TSTAMP                     13
-00874 #endif
-00875 #ifndef     ICMP_TSTAMPREPLY
-00876 #define     ICMP_TSTAMPREPLY                14
-00877 #endif
-00878 #ifndef     ICMP_IREQ
-00879 #define     ICMP_IREQ                       15
-00880 #endif
-00881 #ifndef     ICMP_IREQREPLY
-00882 #define     ICMP_IREQREPLY                  16
-00883 #endif
-00884 #ifndef     ICMP_MASKREQ
-00885 #define     ICMP_MASKREQ                    17
-00886 #endif
-00887 #ifndef     ICMP_MASKREPLY
-00888 #define     ICMP_MASKREPLY                  18
-00889 #endif
-00890     u_int8_t icmp_code;       /* ICMP code */
-00891 #ifndef     ICMP_UNREACH_NET
-00892 #define     ICMP_UNREACH_NET                0
-00893 #endif
-00894 #ifndef     ICMP_UNREACH_HOST
-00895 #define     ICMP_UNREACH_HOST               1
-00896 #endif
-00897 #ifndef     ICMP_UNREACH_PROTOCOL
-00898 #define     ICMP_UNREACH_PROTOCOL           2
-00899 #endif
-00900 #ifndef     ICMP_UNREACH_PORT
-00901 #define     ICMP_UNREACH_PORT               3
-00902 #endif
-00903 #ifndef     ICMP_UNREACH_NEEDFRAG
-00904 #define     ICMP_UNREACH_NEEDFRAG           4
-00905 #endif
-00906 #ifndef     ICMP_UNREACH_SRCFAIL
-00907 #define     ICMP_UNREACH_SRCFAIL            5
-00908 #endif
-00909 #ifndef     ICMP_UNREACH_NET_UNKNOWN
-00910 #define     ICMP_UNREACH_NET_UNKNOWN        6
-00911 #endif
-00912 #ifndef     ICMP_UNREACH_HOST_UNKNOWN
-00913 #define     ICMP_UNREACH_HOST_UNKNOWN       7
-00914 #endif
-00915 #ifndef     ICMP_UNREACH_ISOLATED
-00916 #define     ICMP_UNREACH_ISOLATED           8
-00917 #endif
-00918 #ifndef     ICMP_UNREACH_NET_PROHIB
-00919 #define     ICMP_UNREACH_NET_PROHIB         9
-00920 #endif
-00921 #ifndef     ICMP_UNREACH_HOST_PROHIB
-00922 #define     ICMP_UNREACH_HOST_PROHIB        10
-00923 #endif
-00924 #ifndef     ICMP_UNREACH_TOSNET
-00925 #define     ICMP_UNREACH_TOSNET             11
-00926 #endif
-00927 #ifndef     ICMP_UNREACH_TOSHOST
-00928 #define     ICMP_UNREACH_TOSHOST            12
-00929 #endif
-00930 #ifndef     ICMP_UNREACH_FILTER_PROHIB
-00931 #define     ICMP_UNREACH_FILTER_PROHIB      13
-00932 #endif
-00933 #ifndef     ICMP_UNREACH_HOST_PRECEDENCE
-00934 #define     ICMP_UNREACH_HOST_PRECEDENCE    14
-00935 #endif
-00936 #ifndef     ICMP_UNREACH_PRECEDENCE_CUTOFF
-00937 #define     ICMP_UNREACH_PRECEDENCE_CUTOFF  15
-00938 #endif
-00939 #ifndef     ICMP_REDIRECT_NET
-00940 #define     ICMP_REDIRECT_NET               0
-00941 #endif
-00942 #ifndef     ICMP_REDIRECT_HOST
-00943 #define     ICMP_REDIRECT_HOST              1
-00944 #endif
-00945 #ifndef     ICMP_REDIRECT_TOSNET
-00946 #define     ICMP_REDIRECT_TOSNET            2
-00947 #endif
-00948 #ifndef     ICMP_REDIRECT_TOSHOST
-00949 #define     ICMP_REDIRECT_TOSHOST           3
-00950 #endif
-00951 #ifndef     ICMP_TIMXCEED_INTRANS
-00952 #define     ICMP_TIMXCEED_INTRANS           0
-00953 #endif
-00954 #ifndef     ICMP_TIMXCEED_REASS
-00955 #define     ICMP_TIMXCEED_REASS             1
-00956 #endif
-00957 #ifndef     ICMP_PARAMPROB_OPTABSENT
-00958 #define     ICMP_PARAMPROB_OPTABSENT        1
-00959 #endif
-00960 
-00961     u_int16_t icmp_sum;   /* ICMP Checksum */
-00962 
-00963     union
-00964     {
-00965         struct
-00966         {
-00967             u_int16_t id; /* ICMP id */
-00968             u_int16_t seq;/* ICMP sequence number */
-00969         } echo;
-00970 
-00971 #undef icmp_id
-00972 #undef icmp_seq
-00973 #define icmp_id     hun.echo.id
-00974 #define icmp_seq    hun.echo.seq
-00975  
-00976         u_int32_t gateway; /* gateway host */
-00977         struct
-00978         {
-00979             u_int16_t pad;/* padding */
-00980             u_int16_t mtu;/* MTU size */
-00981         } frag;
-00982     } hun;
-00983     union
-00984     {
-00985         struct
-00986         {
-00987             n_time its_otime;
-00988             n_time its_rtime;
-00989             n_time its_ttime;
-00990         } ts;
-00991         struct
-00992         {
-00993             struct libnet_ipv4_hdr idi_ip;
-00994             /* options and then 64 bits of data */
-00995         } ip;
-00996         u_int32_t mask;
-00997         int8_t data[1];
-00998 
-00999 #undef icmp_mask
-01000 #define icmp_mask    dun.mask
-01001 #undef icmp_data
-01002 #define icmp_data    dun.data
-01003 
-01004 #undef icmp_otime
-01005 #define icmp_otime   dun.ts.its_otime
-01006 #undef icmp_rtime
-01007 #define icmp_rtime   dun.ts.its_rtime
-01008 #undef icmp_ttime
-01009 #define icmp_ttime   dun.ts.its_ttime
-01010     }dun;
-01011 };
-01012 
-01013 
-01014 /*
-01015  *  IGMP header
-01016  *  Internet Group Message Protocol
-01017  *  Static header size: 8 bytes
-01018  */
-01019 struct libnet_igmp_hdr
-01020 {
-01021     u_int8_t igmp_type;       /* IGMP type */
-01022 #ifndef IGMP_MEMBERSHIP_QUERY
-01023 #define IGMP_MEMBERSHIP_QUERY           0x11    /* membership query */
-01024 #endif
-01025 #ifndef IGMP_V1_MEMBERSHIP_REPORT
-01026 #define IGMP_V1_MEMBERSHIP_REPORT       0x12    /* Ver. 1 membership report */
-01027 #endif
-01028 #ifndef IGMP_V2_MEMBERSHIP_REPORT
-01029 #define IGMP_V2_MEMBERSHIP_REPORT       0x16    /* Ver. 2 membership report */
-01030 #endif
-01031 #ifndef IGMP_LEAVE_GROUP
-01032 #define IGMP_LEAVE_GROUP                0x17    /* Leave-group message */
-01033 #endif
-01034     u_int8_t igmp_code;       /* IGMP code */
-01035     u_int16_t igmp_sum;       /* IGMP checksum */
-01036     struct in_addr igmp_group;/* IGMP host IP */
-01037 };
-01038 
-01039 
-01040 /*
-01041  *  IPSEC header
-01042  *  Internet Protocol Security Protocol
-01043  *  Encapsulating Security Payload Header Static header size: 12 bytes
-01044  *  Encapsulating Security Payload Footer Base header size: 2 bytes
-01045  *  Authentication Header Static Size: 16 bytes
-01046  */
-01047 #ifndef IPPROTO_ESP
-01048 #define IPPROTO_ESP 50      /* not everyone's got this */
-01049 #endif
-01050 struct libnet_esp_hdr
-01051 {
-01052    u_int32_t esp_spi;          /* security parameter index */
-01053    u_int32_t esp_seq;          /* ESP sequence number */
-01054    u_int32_t esp_iv;           /* initialization vector */
-01055 };
-01056 
-01057 struct libnet_esp_ftr
-01058 {
-01059     u_int8_t esp_pad_len;     /* padding length */
-01060     u_int8_t esp_nh;     /* next header pointer */
-01061     int8_t *esp_auth;         /* authentication data */
-01062 };
-01063  
-01064 #ifndef IPPROTO_AH
-01065 #define IPPROTO_AH 51       /* not everyone's got this */
-01066 #endif
-01067 struct libnet_ah_hdr
-01068 {
-01069     u_int8_t ah_nh;      /* next header */
-01070     u_int8_t ah_len;          /* payload length */
-01071     u_int16_t ah_res;         /* reserved */
-01072     u_int32_t ah_spi;          /* security parameter index  */
-01073     u_int32_t ah_seq;          /* AH sequence number */
-01074     u_int32_t ah_auth;         /* authentication data */
-01075 };
-01076 
-01077 
-01078 /*
-01079  *  ISL header
-01080  *  Cisco Inter-Switch Link
-01081  *  Static header size: 26 bytes
-01082  */
-01083 /*
-01084  *  For checksum stuff -- IANA says 135-254 is "unassigned" as of 12.2001.
-01085  *  Let's hope this one stays that way for a while!
-01086  */
-01087 #define LIBNET_PROTO_ISL    201
-01088 struct libnet_isl_hdr
-01089 {
-01090     u_int8_t isl_dhost[5];    /* destination address "01:00:0c:00:00" */
-01091 #if (LIBNET_LIL_ENDIAN)
-01092     u_int8_t isl_type:4,      /* type of frame */
-01093            isl_user:4;      /* user defined bits */
-01094 #endif
-01095 #if (LIBNET_BIG_ENDIAN)
-01096     u_int8_t isl_user:4,      /* user defined bits */
-01097            isl_type:4;      /* type of frame */
-01098 #endif
-01099     u_int8_t isl_shost[6];    /* source address */
-01100     u_int16_t isl_len;        /* total length of packet - 18 bytes */
-01101     u_int8_t isl_snap[6];     /* 0xaaaa03 + vendor code */
-01102     u_int16_t isl_vid;        /* 15 bit VLAN ID, 1 bit BPDU / CDP indicator */
-01103     u_int16_t isl_index;      /* port index */
-01104     u_int16_t isl_reserved;   /* used for FDDI and token ring */
-01105     /* ethernet frame and 4 byte isl crc */
-01106 };
-01107 
-01108 #ifndef IPPROTO_OSPF
-01109 #define IPPROTO_OSPF    89  /* not everyone's got this */
-01110 #endif
-01111 #define IPPROTO_OSPF_LSA    890     /* made this up.  Hope it's unused */
-01112 #define LIBNET_MODX         4102    /* used in LSA checksum */
-01113 
-01114 /*
-01115  *  Options used in multiple OSPF packets
-01116  *  More info can be found in section A.2 of RFC 2328.
-01117  */
-01118 #define LIBNET_OPT_EBIT  0x02 /* describes the way AS-external-LSAs are flooded */
-01119 #define LIBNET_OPT_MCBIT 0x04 /* whether or not IP multicast dgrams are fwdd */
-01120 #define LIBNET_OPT_NPBIT 0x08 /* describes handling of type-7 LSAs */
-01121 #define LIBNET_OPT_EABIT 0x10 /* rtr's willingness to send/recv EA-LSAs */
-01122 #define LIBNET_OPT_DCBIT 0x20 /* describes handling of demand circuits */
-01123 
-01124 
-01125 /*
-01126  *  MPLS header
-01127  *  Multi-Protocol Label Switching
-01128  *  Static header size: 4 bytes
-01129  */
-01130 struct libnet_mpls_hdr
-01131 {
-01132     u_int32_t mpls_les;          /* 20 bits label, 3 bits exp, 1 bit bos, ttl */
-01133 #define LIBNET_MPLS_BOS_ON    1
-01134 #define LIBNET_MPLS_BOS_OFF   0
-01135 };
-01136 
-01137 /*
-01138  *  NTP header
-01139  *  Network Time Protocol
-01140  *  Static header size: 48 bytes
-01141  */
-01142 struct libnet_ntp_hdr_l_fp  /* int32_t floating point (64-bit) */
-01143 {
-01144     u_int32_t integer;         /* integer */
-01145     u_int32_t fraction;        /* fraction */
-01146 };
-01147 
-01148 struct libnet_ntp_hdr_s_fp  /* int16_t floating point (32-bit) */
-01149 {
-01150     u_int16_t integer;        /* integer */
-01151     u_int16_t fraction;       /* fraction */
-01152 };
-01153 
-01154 
-01155 struct libnet_ntp_hdr
-01156 {
-01157     u_int8_t ntp_li_vn_mode;              /* leap indicator, version, mode */
-01158 #define LIBNET_NTP_LI_NW    0x0         /* no warning */
-01159 #define LIBNET_NTP_LI_AS    0x1         /* last minute has 61 seconds */
-01160 #define LIBNET_NTP_LI_DS    0x2         /* last minute has 59 seconds */
-01161 #define LIBNET_NTP_LI_AC    0x3         /* alarm condition */
-01162 
-01163 #define LIBNET_NTP_VN_2     0x2         /* version 2 */
-01164 #define LIBNET_NTP_VN_3     0x3         /* version 3 */
-01165 #define LIBNET_NTP_VN_4     0x4         /* version 4 */
-01166 
-01167 #define LIBNET_NTP_MODE_R   0x0         /* reserved */
-01168 #define LIBNET_NTP_MODE_A   0x1         /* symmetric active */
-01169 #define LIBNET_NTP_MODE_P   0x2         /* symmetric passive */
-01170 #define LIBNET_NTP_MODE_C   0x3         /* client */
-01171 #define LIBNET_NTP_MODE_S   0x4         /* server */
-01172 #define LIBNET_NTP_MODE_B   0x5         /* broadcast */
-01173 #define LIBNET_NTP_MODE_RC  0x6         /* reserved for NTP control message */
-01174 #define LIBNET_NTP_MODE_RP  0x7         /* reserved for private use */
-01175     u_int8_t ntp_stratum;                 /* stratum */
-01176 #define LIBNET_NTP_STRATUM_UNAVAIL  0x0 /* unspecified or unavailable */
-01177 #define LIBNET_NTP_STRATUM_PRIMARY  0x1 /* primary reference (radio clock) */
-01178                                         /* 2 - 15 is secondary */
-01179                                         /* 16 - 255 is reserved */
-01180     u_int8_t ntp_poll;                    /* poll interval (should be 4 - 12) */
-01181     u_int8_t ntp_precision;               /* local clock precision */
-01182     struct libnet_ntp_hdr_s_fp ntp_delay;       /* roundtrip delay */
-01183     struct libnet_ntp_hdr_s_fp ntp_dispersion;  /* nominal error */
-01184     u_int32_t ntp_reference_id;                /* reference source id */
-01185 #define LIBNET_NTP_REF_LOCAL    0x4c4f434c  /* uncalibrated local clock */
-01186 #define LIBNET_NTP_REF_PPS      0x50505300  /* atomic / pulse-per-second clock */
-01187 #define LIBNET_NTP_REF_ACTS     0x41435453  /* NIST dialup modem */
-01188 #define LIBNET_NTP_REF_USNO     0x55534e4f  /* USNO modem service */
-01189 #define LIBNET_NTP_REF_PTB      0x50544200  /* PTB (German) modem service */ 
-01190 #define LIBNET_NTP_REF_TDF      0x54444600  /* Allouis (French) radio */
-01191 #define LIBNET_NTP_REF_DCF      0x44434600  /* Mainflingen (German) radio */
-01192 #define LIBNET_NTP_REF_MSF      0x4d534600  /* Rugby (UK) radio */
-01193 #define LIBNET_NTP_REF_WWV      0x57575600  /* Ft Collins (US) radio */
-01194 #define LIBNET_NTP_REF_WWVB     0x57575642  /* Boulder (US) radio */
-01195 #define LIBNET_NTP_REF_WWVH     0x57575648  /* Kaui Hawaii (US) radio */
-01196 #define LIBNET_NTP_REF_CHU      0x43485500  /* Ottaha (Canada) radio */
-01197 #define LIBNET_NTP_REF_LORC     0x4c4f5243  /* LORAN-C radionavigation */
-01198 #define LIBNET_NTP_REF_OMEG     0x4f4d4547  /* OMEGA radionavigation */
-01199 #define LIBNET_NTP_REF_GPS      0x47505300  /* global positioning system */
-01200 #define LIBNET_NTP_REF_GOES     0x474f4553  /* geostationary orbit env satellite */
-01201     struct libnet_ntp_hdr_l_fp ntp_ref_ts;  /* reference timestamp */ 
-01202     struct libnet_ntp_hdr_l_fp ntp_orig_ts; /* originate timestamp */
-01203     struct libnet_ntp_hdr_l_fp ntp_rec_ts;  /* receive timestamp */
-01204     struct libnet_ntp_hdr_l_fp ntp_xmt_ts;  /* transmit timestamp */
-01205 };
-01206 
-01207 
-01208 /*
-01209  *  OSPFv2 header
-01210  *  Open Shortest Path First
-01211  *  Static header size: 16 bytes
-01212  */
-01213 struct libnet_ospf_hdr
-01214 {
-01215     u_int8_t ospf_v;          /* version */
-01216 #define OSPFVERSION         2
-01217     u_int8_t ospf_type;       /* type */
-01218 #define  LIBNET_OSPF_UMD    0   /* UMd monitoring packet */
-01219 #define  LIBNET_OSPF_HELLO  1   /* HELLO packet */
-01220 #define  LIBNET_OSPF_DBD    2   /* dataBase description packet */
-01221 #define  LIBNET_OSPF_LSR    3   /* link state request packet */
-01222 #define  LIBNET_OSPF_LSU    4   /* link state Update Packet */
-01223 #define  LIBNET_OSPF_LSA    5   /* link state acknowledgement packet */
-01224     u_int16_t   ospf_len;     /* length */
-01225     struct in_addr ospf_rtr_id; /* source router ID */
-01226     struct in_addr ospf_area_id;/* roam ID */
-01227     u_int16_t ospf_sum;         /* checksum */
-01228     u_int16_t ospf_auth_type;     /* authentication type */
-01229 #define LIBNET_OSPF_AUTH_NULL   0   /* null password */
-01230 #define LIBNET_OSPF_AUTH_SIMPLE 1   /* simple, plaintext, 8 int8_t password */
-01231 #define LIBNET_OSPF_AUTH_MD5    2   /* MD5 */
-01232 };
-01233 
-01234 
-01235 /*
-01236  *  OSPF authentication header
-01237  *  Open Shortest Path First
-01238  *  Static header size: 8 bytes
-01239  */
-01240 struct libnet_auth_hdr
-01241 {
-01242     u_int16_t ospf_auth_null; /* NULL */
-01243     u_int8_t ospf_auth_keyid; /* authentication key ID */
-01244     u_int8_t ospf_auth_len;   /* auth data length */
-01245     u_int ospf_auth_seq;    /* cryptographic sequence number */
-01246 };
-01247 
-01248 
-01249 /*
-01250  *  OSPF hello header
-01251  *  Open Shortest Path First
-01252  *  Static header size: 28 bytes
-01253  */
-01254 struct libnet_ospf_hello_hdr
-01255 {
-01256     struct in_addr hello_nmask; /* netmask associated with the interface */
-01257     u_int16_t hello_intrvl;       /* num of seconds between routers last packet */
-01258     u_int8_t hello_opts;          /* Options for HELLO packets (look above) */
-01259     u_int8_t hello_rtr_pri;       /* router's priority (if 0, can't be backup) */
-01260     u_int hello_dead_intvl;     /* # of secs a router is silent till deemed down */
-01261     struct in_addr hello_des_rtr;   /* Designated router on the network */
-01262     struct in_addr hello_bkup_rtr;  /* Backup router */
-01263     struct in_addr hello_nbr;       /* neighbor router, memcpy more as needed */
-01264 };
-01265 
-01266 
-01267 /*
-01268  *  Database Description header.
-01269  */
-01270 struct libnet_dbd_hdr
-01271 {
-01272     u_int16_t dbd_mtu_len;    /* max length of IP dgram that this 'if' can use */
-01273     u_int8_t dbd_opts;        /* DBD packet options (from above) */
-01274     u_int8_t dbd_type;        /* type of exchange occurring */
-01275 #define LIBNET_DBD_IBI      0x01    /* init */
-01276 #define LIBNET_DBD_MBIT     0x02    /* more DBD packets are to come */
-01277 #define LIBNET_DBD_MSBIT    0x04    /* If 1, sender is the master in the exchange */
-01278     u_int  dbd_seq;         /* DBD sequence number */
-01279 };
-01280 
-01281 
-01282 /*
-01283  *  used for the LS type field in all LS* headers
-01284  */
-01285 #define LIBNET_LS_TYPE_RTR      1   /* router-LSA */
-01286 #define LIBNET_LS_TYPE_NET      2   /* network-LSA */
-01287 #define LIBNET_LS_TYPE_IP       3   /* summary-LSA (IP Network) */
-01288 #define LIBNET_LS_TYPE_ASBR     4   /* summary-LSA (ASBR) */
-01289 #define LIBNET_LS_TYPE_ASEXT    5   /* AS-external-LSA */
-01290 
-01291 
-01292 /*
-01293  *  Link State Request header
-01294  */
-01295 struct libnet_lsr_hdr
-01296 {
-01297     u_int lsr_type;             /* type of LS being requested */
-01298     u_int lsr_lsid;             /* link state ID */
-01299     struct in_addr lsr_adrtr;   /* advertising router (memcpy more as needed) */
-01300 };
-01301 
-01302 
-01303 /*
-01304  *  Link State Update header
-01305  */
-01306 struct libnet_lsu_hdr
-01307 {
-01308     u_int lsu_num;              /* number of LSAs that will be broadcasted */
-01309 };
-01310 
-01311 
-01312 /*
-01313  *  Link State Acknowledgement header.
-01314  */
-01315 struct libnet_lsa_hdr
-01316 {
-01317     u_int16_t lsa_age;        /* time in seconds since the LSA was originated */
-01318     u_int8_t lsa_opts;        /* look above for OPTS_* */
-01319     u_int8_t lsa_type;        /* look below for LS_TYPE_* */
-01320     u_int lsa_id;           /* link State ID */
-01321     struct in_addr lsa_adv; /* router ID of Advertising router */
-01322     u_int lsa_seq;          /* LSA sequence number to detect old/bad ones */
-01323     u_int16_t lsa_sum;      /* "Fletcher Checksum" of all fields minus age */
-01324     u_int16_t lsa_len;        /* length in bytes including the 20 byte header */
-01325 };
-01326 
-01327 
-01328 /*
-01329  *  Router LSA data format
-01330  *
-01331  *  Other stuff for TOS can be added for backward compatability, for this
-01332  *  version, only OSPFv2 is being FULLY supported.
-01333  */
-01334 struct libnet_rtr_lsa_hdr
-01335 {
-01336     u_int16_t rtr_flags;      /* set to help describe packet */
-01337 #define LIBNET_RTR_FLAGS_W  0x0100  /* W bit */
-01338 #define LIBNET_RTR_FLAGS_E  0x0200  /* E bit */
-01339 #define LIBNET_RTR_FLAGS_B  0x0400  /* B bit */
-01340     u_int16_t rtr_num;        /* number of links within that packet */
-01341     u_int rtr_link_id;      /* describes link_data (look below) */
-01342 #define LIBNET_LINK_ID_NBR_ID   1   /* Neighbors router ID, also can be 4 */
-01343 #define LIBNET_LINK_ID_IP_DES   2   /* IP address of designated router */
-01344 #define LIBNET_LINK_ID_SUB      3   /* IP subnet number */
-01345     u_int rtr_link_data;    /* Depending on link_id, info is here */
-01346     u_int8_t rtr_type;        /* Description of router link */
-01347 #define LIBNET_RTR_TYPE_PTP     1   /* Point-To-Point */
-01348 #define LIBNET_RTR_TYPE_TRANS   2   /* Connection to a "transit network" */
-01349 #define LIBNET_RTR_TYPE_STUB    3   /* Connectin to a "stub network" */
-01350 #define RTR_TYPE_VRTL   4   /* connects to a "virtual link" */
-01351     u_int8_t rtr_tos_num;     /* number of different TOS metrics for this link */
-01352     u_int16_t rtr_metric;     /* the "cost" of using this link */
-01353 };
-01354 
-01355 
-01356 /*
-01357  *  Network LSA data format.
-01358  */
-01359 struct libnet_net_lsa_hdr
-01360 {
-01361     struct in_addr net_nmask;   /* Netmask for that network */
-01362     u_int  net_rtr_id;          /* ID of router attached to that network */
-01363 };
-01364  
-01365  
-01366 /*
-01367  *  Summary LSA data format.
-01368  */
-01369 struct libnet_sum_lsa_hdr
-01370 {
-01371     struct in_addr sum_nmask;   /* Netmask of destination IP address */
-01372     u_int  sum_metric;          /* Same as in rtr_lsa (&0xfff to use last 24bit */
-01373     u_int  sum_tos_metric;      /* first 8bits are TOS, 24bits are TOS Metric */
-01374 };
-01375  
-01376  
-01377 /*
-01378  *  AS External LSA data format.
-01379  *  & 0xfff logic operator for as_metric to get last 24bits.
-01380  */
-01381 struct libnet_as_lsa_hdr
-01382 {
-01383     struct in_addr as_nmask;    /* Netmask for advertised destination */
-01384     u_int  as_metric;           /* May have to set E bit in first 8bits */
-01385 #define LIBNET_AS_E_BIT_ON 0x80000000  /* as_metric */
-01386     struct in_addr as_fwd_addr; /* Forwarding address */
-01387     u_int  as_rte_tag;          /* External route tag */
-01388 };
-01389 
-01390 
-01391 /*
-01392  *  Base RIP header
-01393  *  Routing Information Protocol
-01394  *  Base header size: 24 bytes
-01395  */
-01396 struct libnet_rip_hdr
-01397 {
-01398     u_int8_t rip_cmd;         /* RIP command */
-01399 #define RIPCMD_REQUEST   1  /* want info */
-01400 #define RIPCMD_RESPONSE  2  /* responding to request */
-01401 #define RIPCMD_TRACEON   3  /* turn tracing on */
-01402 #define RIPCMD_TRACEOFF  4  /* turn it off */
-01403 #define RIPCMD_POLL      5  /* like request, but anyone answers */
-01404 #define RIPCMD_POLLENTRY 6  /* like poll, but for entire entry */
-01405 #define RIPCMD_MAX       7  /* ? command */
-01406     u_int8_t rip_ver;         /* RIP version */
-01407 #define RIPVER_0         0
-01408 #define RIPVER_1         1
-01409 #define RIPVER_2         2
-01410     u_int16_t rip_rd;         /* Zero (v1) or Routing Domain (v2) */
-01411     u_int16_t rip_af;         /* Address family */
-01412     u_int16_t rip_rt;         /* Zero (v1) or Route Tag (v2) */
-01413     u_int32_t rip_addr;        /* IP address */
-01414     u_int32_t rip_mask;        /* Zero (v1) or Subnet Mask (v2) */
-01415     u_int32_t rip_next_hop;    /* Zero (v1) or Next hop IP address (v2) */
-01416     u_int32_t rip_metric;      /* Metric */
-01417 };
-01418 
-01419 /*
-01420  *  RPC headers
-01421  *  Remote Procedure Call
-01422  */
-01423 #define LIBNET_RPC_CALL  0
-01424 #define LIBNET_RPC_REPLY 1
-01425 #define LIBNET_RPC_VERS  2
-01426 #define LIBNET_RPC_LAST_FRAG 0x80000000
-01427 
-01428 /*
-01429  *  Portmap defines
-01430  */
-01431 #define LIBNET_PMAP_PROGRAM          100000
-01432 #define LIBNET_PMAP_PROC_NULL        0
-01433 #define LIBNET_PMAP_PROC_SET         1
-01434 #define LIBNET_PMAP_PROC_UNSET       2
-01435 #define LIBNET_PMAP_PROC_GETADDR     3
-01436 #define LIBNET_PMAP_PROC_DUMP        4
-01437 #define LIBNET_PMAP_PROC_CALLIT      5
-01438 #define LIBNET_PMAP_PROC_BCAST       5 /* Not a typo */
-01439 #define LIBNET_PMAP_PROC_GETTIME     6
-01440 #define LIBNET_PMAP_PROC_UADDR2TADDR 7
-01441 #define LIBNET_PMAP_PROC_TADDR2UADDR 8
-01442 #define LIBNET_PMAP_PROC_GETVERSADDR 9
-01443 #define LIBNET_PMAP_PROC_INDIRECT    10
-01444 #define LIBNET_PMAP_PROC_GETADDRLIST 11
-01445 #define LIBNET_PMAP_PROC_GETSTAT     12
-01446 
-01447 /* There will be more to add... */
-01448 
-01449 struct libnet_rpc_opaque_auth
-01450 {
-01451     u_int32_t rpc_auth_flavor;
-01452     u_int32_t rpc_auth_length;
-01453 //    u_int8_t *rpc_auth_data;
-01454 };
-01455 
-01456 struct libnet_rpc_call
-01457 {
-01458     u_int32_t rpc_rpcvers;   /* RPC version - must be 2 */
-01459     u_int32_t rpc_prognum;   /* Program Number */
-01460     u_int32_t rpc_vers;      /* Program Version */
-01461     u_int32_t rpc_procedure; /* RPC procedure */
-01462     struct libnet_rpc_opaque_auth rpc_credentials;
-01463     struct libnet_rpc_opaque_auth rpc_verifier;
-01464 };
-01465 
-01466 struct libnet_rpc_call_hdr
-01467 {
-01468     u_int32_t rpc_xid;  /* xid (transaction identifier) */
-01469     u_int32_t rpc_type;
-01470     struct libnet_rpc_call  rpc_call;
-01471 };
-01472 
-01473 struct libnet_rpc_call_tcp_hdr
-01474 {
-01475     u_int32_t rpc_record_marking; /* used with byte stream protocols */
-01476     struct libnet_rpc_call_hdr rpc_common;
-01477 };
-01478 
-01479 /*
-01480  *  STP configuration header
-01481  *  Spanning Tree Protocol
-01482  *  Static header size: 35 bytes
-01483  */
-01484 struct libnet_stp_conf_hdr
-01485 {
-01486     u_int16_t stp_id;         /* protocol id */
-01487     u_int8_t stp_version;     /* protocol version */
-01488     u_int8_t stp_bpdu_type;   /* bridge protocol data unit type */
-01489     u_int8_t stp_flags;       /* control flags */
-01490     u_int8_t stp_rootid[8];   /* root id */
-01491     u_int32_t stp_rootpc;      /* root path cost */
-01492     u_int8_t stp_bridgeid[8]; /* bridge id */
-01493     u_int16_t stp_portid;     /* port id */
-01494     u_int16_t stp_mage;       /* message age */
-01495     u_int16_t stp_maxage;     /* max age */
-01496     u_int16_t stp_hellot;     /* hello time */
-01497     u_int16_t stp_fdelay;     /* forward delay */
-01498 };
-01499 
-01500 
-01501 /*
-01502  *  STP topology change notification header
-01503  *  Spanning Tree Protocol
-01504  *  Static header size: 4 bytes
-01505  */
-01506 struct libnet_stp_tcn_hdr
-01507 {
-01508     u_int16_t stp_id;         /* protocol id */
-01509     u_int8_t stp_version;     /* protocol version */
-01510     u_int8_t stp_bpdu_type;   /* bridge protocol data unit type */
-01511 };
-01512 
-01513 
-01514 /*
-01515  *  TCP header
-01516  *  Transmission Control Protocol
-01517  *  Static header size: 20 bytes
-01518  */
-01519 struct libnet_tcp_hdr
-01520 {
-01521     u_int16_t th_sport;       /* source port */
-01522     u_int16_t th_dport;       /* destination port */
-01523     u_int32_t th_seq;          /* sequence number */
-01524     u_int32_t th_ack;          /* acknowledgement number */
-01525 #if (LIBNET_LIL_ENDIAN)
-01526     u_int8_t th_x2:4,         /* (unused) */
-01527            th_off:4;        /* data offset */
-01528 #endif
-01529 #if (LIBNET_BIG_ENDIAN)
-01530     u_int8_t th_off:4,        /* data offset */
-01531            th_x2:4;         /* (unused) */
-01532 #endif
-01533     u_int8_t  th_flags;       /* control flags */
-01534 #ifndef TH_FIN
-01535 #define TH_FIN    0x01      /* finished send data */
-01536 #endif
-01537 #ifndef TH_SYN
-01538 #define TH_SYN    0x02      /* synchronize sequence numbers */
-01539 #endif
-01540 #ifndef TH_RST
-01541 #define TH_RST    0x04      /* reset the connection */
-01542 #endif
-01543 #ifndef TH_PUSH
-01544 #define TH_PUSH   0x08      /* push data to the app layer */
-01545 #endif
-01546 #ifndef TH_ACK
-01547 #define TH_ACK    0x10      /* acknowledge */
-01548 #endif
-01549 #ifndef TH_URG
-01550 #define TH_URG    0x20      /* urgent! */
-01551 #endif
-01552 #ifndef TH_ECE
-01553 #define TH_ECE    0x40
-01554 #endif
-01555 #ifndef TH_CWR   
-01556 #define TH_CWR    0x80
-01557 #endif
-01558     u_int16_t th_win;         /* window */
-01559     u_int16_t th_sum;         /* checksum */
-01560     u_int16_t th_urp;         /* urgent pointer */
-01561 };
-01562 
-01563 /*
-01564  *  Token Ring Header
-01565  */
-01566 struct libnet_token_ring_hdr
-01567 {
-01568     u_int8_t  token_ring_access_control;
-01569 #define LIBNET_TOKEN_RING_FRAME  0x10
-01570     u_int8_t  token_ring_frame_control;
-01571 #define LIBNET_TOKEN_RING_LLC_FRAME  0x40
-01572     u_int8_t  token_ring_dhost[TOKEN_RING_ADDR_LEN];
-01573     u_int8_t  token_ring_shost[TOKEN_RING_ADDR_LEN];
-01574     u_int8_t  token_ring_llc_dsap;
-01575     u_int8_t  token_ring_llc_ssap;
-01576     u_int8_t  token_ring_llc_control_field;
-01577     u_int8_t  token_ring_llc_org_code[LIBNET_ORG_CODE_SIZE];
-01578     u_int16_t token_ring_type;
-01579 #define TOKEN_RING_TYPE_IP            0x0800  /* IP protocol */
-01580 #define TOKEN_RING_TYPE_ARP           0x0806  /* addr. resolution protocol */
-01581 #define TOKEN_RING_TYPE_REVARP        0x8035  /* reverse addr. resolution protocol */
-01582 };
-01583 
-01584 struct libnet_token_ring_addr
-01585 {
-01586     u_int8_t  token_ring_addr_octet[6];        /* Token Ring address */
-01587 };
-01588 
-01589 /*
-01590  *  UDP header
-01591  *  User Data Protocol
-01592  *  Static header size: 8 bytes
-01593  */
-01594 struct libnet_udp_hdr
-01595 {
-01596     u_int16_t uh_sport;       /* soure port */
-01597     u_int16_t uh_dport;       /* destination port */
-01598     u_int16_t uh_ulen;        /* length */
-01599     u_int16_t uh_sum;         /* checksum */
-01600 };
-01601 
-01602 /*
-01603  *  Sebek header
-01604  *  Static header size: 48 bytes
-01605  */
-01606 struct libnet_sebek_hdr
-01607 {
-01608     u_int32_t magic;           /* identify packets that should be hidden */
-01609     u_int16_t version;         /* protocol version, currently 1 */
-01610 #define SEBEK_PROTO_VERSION 1
-01611     u_int16_t type;            /* type of record (read data is type 0, write data is type 1) */
-01612 #define SEBEK_TYPE_READ     0  /* Currently, only read is supported */
-01613 #define SEBEK_TYPE_WRITE    1
-01614     u_int32_t counter;         /*  PDU counter used to identify when packet are lost */
-01615     u_int32_t time_sec;        /* seconds since EPOCH according to the honeypot */
-01616     u_int32_t time_usec;       /* residual microseconds */
-01617     u_int32_t pid;             /* PID */
-01618     u_int32_t uid;             /* UID */
-01619     u_int32_t fd;              /* FD */
-01620 #define SEBEK_CMD_LENGTH   12
-01621     u_int8_t cmd[SEBEK_CMD_LENGTH]; /* 12 first characters of the command */
-01622     u_int32_t length;          /* length in bytes of the PDU's body */
-01623 };
-01624 
-01625 
-01626 /*
-01627  *  VRRP header
-01628  *  Virtual Router Redundancy Protocol
-01629  *  Static header size: 8 bytes
-01630  */
-01631 #ifndef IPPROTO_VRRP
-01632 #define IPPROTO_VRRP 112    /* not everyone's got this */
-01633 #endif
-01634 struct libnet_vrrp_hdr
-01635 {
-01636 #if (LIBNET_LIL_ENDIAN)
-01637     u_int8_t vrrp_v:4,        /* protocol version */
-01638            vrrp_t:4;        /* packet type */
-01639 #endif
-01640 #if (LIBNET_BIG_ENDIAN)
-01641     u_int8_t vrrp_t:4,        /* packet type */
-01642            vrrp_v:4;        /* protocol version */
-01643 #endif
-01644 #define LIBNET_VRRP_VERSION_01  0x1
-01645 #define LIBNET_VRRP_VERSION_02  0x2
-01646 #define LIBNET_VRRP_TYPE_ADVERT 0x1
-01647     u_int8_t vrrp_vrouter_id; /* virtual router id */
-01648     u_int8_t vrrp_priority;   /* priority */
-01649     u_int8_t vrrp_ip_count;   /* number of IP addresses */
-01650     u_int8_t vrrp_auth_type;  /* authorization type */
-01651 #define LIBNET_VRRP_AUTH_NONE   0x1
-01652 #define LIBNET_VRRP_AUTH_PASSWD 0x2
-01653 #define LIBNET_VRRP_AUTH_IPAH   0x3
-01654     u_int8_t vrrp_advert_int; /* advertisement interval */
-01655     u_int16_t vrrp_sum;       /* checksum */
-01656     /* additional addresses */
-01657     /* authentication info */
-01658 };
-01659 
-01660 #endif  /* __LIBNET_HEADERS_H */
-01661 
-01662 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-headers_8h.html b/libnet/doc/html/libnet-headers_8h.html deleted file mode 100644 index e2e5da4..0000000 --- a/libnet/doc/html/libnet-headers_8h.html +++ /dev/null @@ -1,3053 +0,0 @@ - - -libnet: libnet-headers.h File Reference - - - - -

libnet-headers.h File Reference

libnet header information -More... -

- -

-Go to the source code of this file. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Data Structures

struct  libnet_802_1q_hdr
struct  libnet_802_1x_hdr
struct  libnet_802_2_hdr
struct  libnet_802_2snap_hdr
struct  libnet_802_3_hdr
struct  libnet_ah_hdr
struct  libnet_arp_hdr
struct  libnet_as_lsa_hdr
struct  libnet_auth_hdr
struct  libnet_bgp4_header_hdr
struct  libnet_bgp4_notification_hdr
struct  libnet_bgp4_open_hdr
struct  libnet_cdp_hdr
struct  libnet_cdp_value_hdr
struct  libnet_dbd_hdr
struct  libnet_dhcpv4_hdr
struct  libnet_dnsv4_hdr
struct  libnet_esp_ftr
struct  libnet_esp_hdr
struct  libnet_ether_addr
struct  libnet_ethernet_hdr
struct  libnet_fddi_addr
struct  libnet_fddi_hdr
struct  libnet_gre_hdr
struct  libnet_gre_sre_hdr
struct  libnet_icmpv4_hdr
struct  libnet_icmpv6_hdr
struct  libnet_igmp_hdr
struct  libnet_in6_addr
struct  libnet_ipv4_hdr
struct  libnet_ipv6_destopts_hdr
struct  libnet_ipv6_frag_hdr
struct  libnet_ipv6_hbhopts_hdr
struct  libnet_ipv6_hdr
struct  libnet_ipv6_routing_hdr
struct  libnet_isl_hdr
struct  libnet_lsa_hdr
struct  libnet_lsr_hdr
struct  libnet_lsu_hdr
struct  libnet_mpls_hdr
struct  libnet_net_lsa_hdr
struct  libnet_ntp_hdr
struct  libnet_ntp_hdr_l_fp
struct  libnet_ntp_hdr_s_fp
struct  libnet_ospf_hdr
struct  libnet_ospf_hello_hdr
struct  libnet_rip_hdr
struct  libnet_rpc_call
struct  libnet_rpc_call_hdr
struct  libnet_rpc_call_tcp_hdr
struct  libnet_rpc_opaque_auth
struct  libnet_rtr_lsa_hdr
struct  libnet_sebek_hdr
struct  libnet_stp_conf_hdr
struct  libnet_stp_tcn_hdr
struct  libnet_sum_lsa_hdr
struct  libnet_tcp_hdr
struct  libnet_token_ring_addr
struct  libnet_token_ring_hdr
struct  libnet_udp_hdr
struct  libnet_vrrp_hdr

Defines

#define LIBNET_802_1Q_H   0x12
#define LIBNET_802_1X_H   0x04
#define LIBNET_802_2_H   0x03
#define LIBNET_802_2SNAP_H   0x08
#define LIBNET_802_3_H   0x0e
#define LIBNET_ARP_H   0x08
#define LIBNET_ARP_ETH_IP_H   0x1c
#define LIBNET_BGP4_HEADER_H   0x13
#define LIBNET_BGP4_OPEN_H   0x0a
#define LIBNET_BGP4_UPDATE_H   0x04
#define LIBNET_BGP4_NOTIFICATION_H   0x02
#define LIBNET_CDP_H   0x08
#define LIBNET_DHCPV4_H   0xf0
#define LIBNET_UDP_DNSV4_H   0x0c
#define LIBNET_TCP_DNSV4_H   0x0e
#define LIBNET_ETH_H   0x0e
#define LIBNET_FDDI_H   0x15
#define LIBNET_ICMPV4_H   0x04
#define LIBNET_ICMPV4_ECHO_H   0x08
#define LIBNET_ICMPV4_MASK_H   0x0c
#define LIBNET_ICMPV4_UNREACH_H   0x08
#define LIBNET_ICMPV4_TIMXCEED_H   0x08
#define LIBNET_ICMPV4_REDIRECT_H   0x08
#define LIBNET_ICMPV4_TS_H   0x14
#define LIBNET_ICMPV6_H   0x08
#define LIBNET_IGMP_H   0x08
#define LIBNET_IPV4_H   0x14
#define LIBNET_IPV6_H   0x28
#define LIBNET_IPV6_FRAG_H   0x08
#define LIBNET_IPV6_ROUTING_H   0x04
#define LIBNET_IPV6_DESTOPTS_H   0x02
#define LIBNET_IPV6_HBHOPTS_H   0x02
#define LIBNET_IPSEC_ESP_HDR_H   0x0c
#define LIBNET_IPSEC_ESP_FTR_H   0x02
#define LIBNET_IPSEC_AH_H   0x10
#define LIBNET_ISL_H   0x1a
#define LIBNET_GRE_H   0x04
#define LIBNET_GRE_SRE_H   0x04
#define LIBNET_MPLS_H   0x04
#define LIBNET_OSPF_H   0x10
#define LIBNET_OSPF_HELLO_H   0x18
#define LIBNET_OSPF_DBD_H   0x08
#define LIBNET_OSPF_LSR_H   0x0c
#define LIBNET_OSPF_LSU_H   0x04
#define LIBNET_OSPF_LSA_H   0x14
#define LIBNET_OSPF_AUTH_H   0x08
#define LIBNET_OSPF_CKSUM   0x10
#define LIBNET_OSPF_LS_RTR_H   0x10
#define LIBNET_OSPF_LS_NET_H   0x08
#define LIBNET_OSPF_LS_SUM_H   0x0c
#define LIBNET_OSPF_LS_AS_EXT_H   0x10
#define LIBNET_NTP_H   0x30
#define LIBNET_RIP_H   0x18
#define LIBNET_RPC_CALL_H   0x28
#define LIBNET_RPC_CALL_TCP_H   0x2c
-#define LIBNET_SEBEK_H   0x30
#define LIBNET_STP_CONF_H   0x23
#define LIBNET_STP_TCN_H   0x04
#define LIBNET_TOKEN_RING_H   0x16
#define LIBNET_TCP_H   0x14
#define LIBNET_UDP_H   0x08
#define LIBNET_VRRP_H   0x08
#define LIBNET_802_1Q_PRIMASK   0x0007
#define LIBNET_802_1Q_CFIMASK   0x0001
#define LIBNET_802_1Q_VIDMASK   0x0fff
#define LIBNET_802_1X_PACKET   0x00
#define LIBNET_802_1X_START   0x01
#define LIBNET_802_1X_LOGOFF   0x02
#define LIBNET_802_1X_KEY   0x03
#define LIBNET_802_1X_ENCASFAL   0x04
-#define LIBNET_SAP_STP   0x42
-#define LIBNET_SAP_SNAP   0xaa
-#define ARPHRD_NETROM   0
-#define ARPHRD_ETHER   1
-#define ARPHRD_EETHER   2
-#define ARPHRD_AX25   3
-#define ARPHRD_PRONET   4
-#define ARPHRD_CHAOS   5
-#define ARPHRD_IEEE802   6
-#define ARPHRD_ARCNET   7
-#define ARPHRD_APPLETLK   8
-#define ARPHRD_LANSTAR   9
-#define ARPHRD_DLCI   15
-#define ARPHRD_ATM   19
-#define ARPHRD_METRICOM   23
-#define ARPHRD_IPSEC   31
-#define ARPOP_REQUEST   1
-#define ARPOP_REPLY   2
-#define ARPOP_REVREQUEST   3
-#define ARPOP_REVREPLY   4
-#define ARPOP_INVREQUEST   8
-#define ARPOP_INVREPLY   9
-#define LIBNET_BGP4_MARKER_SIZE   16
-#define LIBNET_BGP4_OPEN   1
-#define LIBNET_BGP4_UPDATE   2
-#define LIBNET_BGP4_NOTIFICATION   3
-#define LIBNET_BGP4_KEEPALIVE   4
-#define LIBNET_BGP4_MESSAGE_HEADER_ERROR   1
-#define LIBNET_BGP4_OPEN_MESSAGE_ERROR   2
-#define LIBNET_BGP4_UPDATE_MESSAGE_ERROR   3
-#define LIBNET_BGP4_HOLD_TIMER_EXPIRED   4
-#define LIBNET_BGP4_FINITE_STATE__ERROR   5
-#define LIBNET_BGP4_CEASE   6
-#define LIBNET_BGP4_CONNECTION_NOT_SYNCHRONIZED   1
-#define LIBNET_BGP4_BAD_MESSAGE_LENGTH   2
-#define LIBNET_BGP4_BAD_MESSAGE_TYPE   3
-#define LIBNET_BGP4_UNSUPPORTED_VERSION_NUMBER   1
-#define LIBNET_BGP4_BAD_PEER_AS   2
-#define LIBNET_BGP4_BAD_BGP_IDENTIFIER   3
-#define LIBNET_BGP4_UNSUPPORTED_OPTIONAL_PARAMETER   4
-#define LIBNET_BGP4_AUTHENTICATION_FAILURE   5
-#define LIBNET_BGP4_UNACCEPTABLE_HOLD_TIME   6
-#define LIBNET_BGP4_MALFORMED_ATTRIBUTE_LIST
-#define LIBNET_BGP4_UNRECOGNIZED_WELL_KNOWN_ATTRIBUTE
-#define LIBNET_BGP4_MISSING_WELL_KNOWN_ATTRIBUTE
-#define LIBNET_BGP4_ATTRIBUTE_FLAGS_ERROR
-#define LIBNET_BGP4_ATTRIBUTE_LENGTH_ERROR
-#define LIBNET_BGP4_INVALID_ORIGIN_ATTRIBUTE
-#define LIBNET_BGP4_AS_ROUTING_LOOP
-#define LIBNET_BGP4_INVALID_NEXT_HOP_ATTRIBUTE
-#define LIBNET_BGP4_OPTIONAL_ATTRIBUTE_ERROR
-#define LIBNET_BGP4_INVALID_NETWORK_FIELD
-#define LIBNET_BGP4_MALFORMED_AS_PATH
-#define LIBNET_PROTO_CDP   200
-#define LIBNET_CDP_DEVID   0x1
-#define LIBNET_CDP_ADDRESS   0x2
-#define LIBNET_CDP_PORTID   0x3
-#define LIBNET_CDP_CAPABIL   0x4
-#define LIBNET_CDP_VERSION   0x5
-#define LIBNET_CDP_PLATFORM   0x6
-#define LIBNET_CDP_IPPREFIX   0x7
-#define LIBNET_CDP_CAP_L3R   0x01
-#define LIBNET_CDP_CAP_L2B   0x02
-#define LIBNET_CDP_CAP_L2SRB   0x04
-#define LIBNET_CDP_CAP_L2S   0x08
-#define LIBNET_CDP_CAP_SR   0x10
-#define LIBNET_CDP_CAP_NOI   0x20
-#define LIBNET_CDP_CAP_L1F   0x40
-#define LIBNET_DHCP_REQUEST   0x1
-#define LIBNET_DHCP_REPLY   0x2
-#define DHCP_MAGIC   0x63825363
-#define LIBNET_BOOTP_MIN_LEN   0x12c
-#define LIBNET_DHCP_PAD   0x00
-#define LIBNET_DHCP_SUBNETMASK   0x01
-#define LIBNET_DHCP_TIMEOFFSET   0x02
-#define LIBNET_DHCP_ROUTER   0x03
-#define LIBNET_DHCP_TIMESERVER   0x04
-#define LIBNET_DHCP_NAMESERVER   0x05
-#define LIBNET_DHCP_DNS   0x06
-#define LIBNET_DHCP_LOGSERV   0x07
-#define LIBNET_DHCP_COOKIESERV   0x08
-#define LIBNET_DHCP_LPRSERV   0x09
-#define LIBNET_DHCP_IMPSERV   0x0a
-#define LIBNET_DHCP_RESSERV   0x0b
-#define LIBNET_DHCP_HOSTNAME   0x0c
-#define LIBNET_DHCP_BOOTFILESIZE   0x0d
-#define LIBNET_DHCP_DUMPFILE   0x0e
-#define LIBNET_DHCP_DOMAINNAME   0x0f
-#define LIBNET_DHCP_SWAPSERV   0x10
-#define LIBNET_DHCP_ROOTPATH   0x11
-#define LIBNET_DHCP_EXTENPATH   0x12
-#define LIBNET_DHCP_IPFORWARD   0x13
-#define LIBNET_DHCP_SRCROUTE   0x14
-#define LIBNET_DHCP_POLICYFILTER   0x15
-#define LIBNET_DHCP_MAXASMSIZE   0x16
-#define LIBNET_DHCP_IPTTL   0x17
-#define LIBNET_DHCP_MTUTIMEOUT   0x18
-#define LIBNET_DHCP_MTUTABLE   0x19
-#define LIBNET_DHCP_MTUSIZE   0x1a
-#define LIBNET_DHCP_LOCALSUBNETS   0x1b
-#define LIBNET_DHCP_BROADCASTADDR   0x1c
-#define LIBNET_DHCP_DOMASKDISCOV   0x1d
-#define LIBNET_DHCP_MASKSUPPLY   0x1e
-#define LIBNET_DHCP_DOROUTEDISC   0x1f
-#define LIBNET_DHCP_ROUTERSOLICIT   0x20
-#define LIBNET_DHCP_STATICROUTE   0x21
-#define LIBNET_DHCP_TRAILERENCAP   0x22
-#define LIBNET_DHCP_ARPTIMEOUT   0x23
-#define LIBNET_DHCP_ETHERENCAP   0x24
-#define LIBNET_DHCP_TCPTTL   0x25
-#define LIBNET_DHCP_TCPKEEPALIVE   0x26
-#define LIBNET_DHCP_TCPALIVEGARBAGE   0x27
-#define LIBNET_DHCP_NISDOMAIN   0x28
-#define LIBNET_DHCP_NISSERVERS   0x29
-#define LIBNET_DHCP_NISTIMESERV   0x2a
-#define LIBNET_DHCP_VENDSPECIFIC   0x2b
-#define LIBNET_DHCP_NBNS   0x2c
-#define LIBNET_DHCP_NBDD   0x2d
-#define LIBNET_DHCP_NBTCPIP   0x2e
-#define LIBNET_DHCP_NBTCPSCOPE   0x2f
-#define LIBNET_DHCP_XFONT   0x30
-#define LIBNET_DHCP_XDISPLAYMGR   0x31
-#define LIBNET_DHCP_DISCOVERADDR   0x32
-#define LIBNET_DHCP_LEASETIME   0x33
-#define LIBNET_DHCP_OPTIONOVERLOAD   0x34
-#define LIBNET_DHCP_MESSAGETYPE   0x35
-#define LIBNET_DHCP_SERVIDENT   0x36
-#define LIBNET_DHCP_PARAMREQUEST   0x37
-#define LIBNET_DHCP_MESSAGE   0x38
-#define LIBNET_DHCP_MAXMSGSIZE   0x39
-#define LIBNET_DHCP_RENEWTIME   0x3a
-#define LIBNET_DHCP_REBINDTIME   0x3b
-#define LIBNET_DHCP_CLASSSID   0x3c
-#define LIBNET_DHCP_CLIENTID   0x3d
-#define LIBNET_DHCP_NISPLUSDOMAIN   0x40
-#define LIBNET_DHCP_NISPLUSSERVERS   0x41
-#define LIBNET_DHCP_MOBILEIPAGENT   0x44
-#define LIBNET_DHCP_SMTPSERVER   0x45
-#define LIBNET_DHCP_POP3SERVER   0x46
-#define LIBNET_DHCP_NNTPSERVER   0x47
-#define LIBNET_DHCP_WWWSERVER   0x48
-#define LIBNET_DHCP_FINGERSERVER   0x49
-#define LIBNET_DHCP_IRCSERVER   0x4a
-#define LIBNET_DHCP_STSERVER   0x4b
-#define LIBNET_DHCP_STDASERVER   0x4c
-#define LIBNET_DHCP_END   0xff
-#define LIBNET_DHCP_MSGDISCOVER   0x01
-#define LIBNET_DHCP_MSGOFFER   0x02
-#define LIBNET_DHCP_MSGREQUEST   0x03
-#define LIBNET_DHCP_MSGDECLINE   0x04
-#define LIBNET_DHCP_MSGACK   0x05
-#define LIBNET_DHCP_MSGNACK   0x06
-#define LIBNET_DHCP_MSGRELEASE   0x07
-#define LIBNET_DHCP_MSGINFORM   0x08
-#define LIBNET_DNS_H   LIBNET_UDP_DNSV4_H
-#define ETHERTYPE_PUP   0x0200
-#define ETHERTYPE_IP   0x0800
-#define ETHERTYPE_ARP   0x0806
-#define ETHERTYPE_REVARP   0x8035
-#define ETHERTYPE_VLAN   0x8100
-#define ETHERTYPE_EAP   0x888e
-#define ETHERTYPE_MPLS   0x8847
-#define ETHERTYPE_LOOPBACK   0x9000
-#define LIBNET_FDDI_LLC_FRAME   0x10
-#define LIBNET_FDDI_48BIT_ADDR   0x40
-#define LIBNET_FDDI_FC_REQD   LIBNET_FDDI_LLC_FRAME | LIBNET_FDDI_48BIT_ADDR
-#define FDDI_TYPE_IP   0x0800
-#define FDDI_TYPE_ARP   0x0806
-#define FDDI_TYPE_REVARP   0x8035
-#define GRE_CSUM   0x8000
-#define GRE_ROUTING   0x4000
-#define GRE_KEY   0x2000
-#define GRE_SEQ   0x1000
-#define GRE_STRICT   0x0800
-#define GRE_REC   0x0700
-#define GRE_ACK   0x0080
-#define GRE_FLAGS_MASK   0x00F8
-#define GRE_VERSION_MASK   0x0007
-#define GRE_VERSION_0   0x0000
-#define GRE_VERSION_1   0x0001
-#define GRE_SNA   0x0004
-#define GRE_OSI_NETWORK_LAYER   0x00FE
-#define GRE_PUP   0x0200
-#define GRE_XNS   0x0600
-#define GRE_IP   0x0800
-#define GRE_CHAOS   0x0804
-#define GRE_RFC_826_ARP   0x0806
-#define GRE_FRAME_RELAY_ARP   0x0808
-#define GRE_VINES   0x0BAD
-#define GRE_VINES_ECHO   0x0BAE
-#define GRE_VINES_LOOPBACK   0x0BAF
-#define GRE_DECNET   0x6003
-#define GRE_TRANSPARENT_ETHERNET_BRIDGING   0x6558
-#define GRE_RAW_FRAME_RELAY   0x6559
-#define GRE_APOLLO_DOMAIN   0x8019
-#define GRE_ETHERTALK   0x809B
-#define GRE_NOVELL_IPX   0x8137
-#define GRE_RFC_1144_TCP_IP_COMPRESSION   0x876B
-#define GRE_IP_AUTONOMOUS_SYSTEMS   0x876C
-#define GRE_SECURE_DATA   0x876D
-#define GRE_PPP   0x880b
-#define gre_sum   _data._gre.sum
-#define gre_offset   _data._gre.offset
-#define gre_key   _data._gre.key
-#define gre_seq   _data._gre.seq
-#define egre_payload_s   _data._egre.payload_s
-#define egre_callID   _data._egre.callID
-#define egre_seq   _data._egre.seq
-#define egre_ack   _data._egre.ack
-#define IPPROTO_GRE   47
-#define IPTOS_LOWDELAY   0x10
-#define IPTOS_THROUGHPUT   0x08
-#define IPTOS_RELIABILITY   0x04
-#define IPTOS_LOWCOST   0x02
-#define IP_RF   0x8000
-#define IP_DF   0x4000
-#define IP_MF   0x2000
-#define IP_OFFMASK   0x1fff
-#define IPOPT_EOL   0
-#define IPOPT_NOP   1
-#define IPOPT_RR   7
-#define IPOPT_TS   68
-#define IPOPT_SECURITY   130
-#define IPOPT_LSRR   131
-#define IPOPT_SATID   136
-#define IPOPT_SSRR   137
-#define libnet_s6_addr   __u6_addr.__u6_addr8
-#define LIBNET_IPV6_NH_FRAGMENT   44
-#define LIBNET_IPV6_NH_ROUTING   43
-#define LIBNET_IPV6_NH_DESTOPTS   60
-#define LIBNET_IPV6_NH_HBH   0
-#define IPPROTO_ICMP6   0x3a
-#define ICMP6_ECHO   128
-#define ICMP6_ECHOREPLY   129
-#define ICMP6_UNREACH   1
-#define ICMP6_PKTTOOBIG   2
-#define ICMP6_TIMXCEED   3
-#define ICMP6_PARAMPROB   4
-#define ICMP_ECHOREPLY   0
-#define ICMP_UNREACH   3
-#define ICMP_SOURCEQUENCH   4
-#define ICMP_REDIRECT   5
-#define ICMP_ECHO   8
-#define ICMP_ROUTERADVERT   9
-#define ICMP_ROUTERSOLICIT   10
-#define ICMP_TIMXCEED   11
-#define ICMP_PARAMPROB   12
-#define ICMP_TSTAMP   13
-#define ICMP_TSTAMPREPLY   14
-#define ICMP_IREQ   15
-#define ICMP_IREQREPLY   16
-#define ICMP_MASKREQ   17
-#define ICMP_MASKREPLY   18
-#define ICMP_UNREACH_NET   0
-#define ICMP_UNREACH_HOST   1
-#define ICMP_UNREACH_PROTOCOL   2
-#define ICMP_UNREACH_PORT   3
-#define ICMP_UNREACH_NEEDFRAG   4
-#define ICMP_UNREACH_SRCFAIL   5
-#define ICMP_UNREACH_NET_UNKNOWN   6
-#define ICMP_UNREACH_HOST_UNKNOWN   7
-#define ICMP_UNREACH_ISOLATED   8
-#define ICMP_UNREACH_NET_PROHIB   9
-#define ICMP_UNREACH_HOST_PROHIB   10
-#define ICMP_UNREACH_TOSNET   11
-#define ICMP_UNREACH_TOSHOST   12
-#define ICMP_UNREACH_FILTER_PROHIB   13
-#define ICMP_UNREACH_HOST_PRECEDENCE   14
-#define ICMP_UNREACH_PRECEDENCE_CUTOFF   15
-#define ICMP_REDIRECT_NET   0
-#define ICMP_REDIRECT_HOST   1
-#define ICMP_REDIRECT_TOSNET   2
-#define ICMP_REDIRECT_TOSHOST   3
-#define ICMP_TIMXCEED_INTRANS   0
-#define ICMP_TIMXCEED_REASS   1
-#define ICMP_PARAMPROB_OPTABSENT   1
-#define icmp_id   hun.echo.id
-#define icmp_seq   hun.echo.seq
-#define icmp_mask   dun.mask
-#define icmp_data   dun.data
-#define icmp_otime   dun.ts.its_otime
-#define icmp_rtime   dun.ts.its_rtime
-#define icmp_ttime   dun.ts.its_ttime
-#define IGMP_MEMBERSHIP_QUERY   0x11
-#define IGMP_V1_MEMBERSHIP_REPORT   0x12
-#define IGMP_V2_MEMBERSHIP_REPORT   0x16
-#define IGMP_LEAVE_GROUP   0x17
-#define IPPROTO_ESP   50
-#define IPPROTO_AH   51
-#define LIBNET_PROTO_ISL   201
-#define IPPROTO_OSPF   89
-#define IPPROTO_OSPF_LSA   890
-#define LIBNET_MODX   4102
-#define LIBNET_OPT_EBIT   0x02
-#define LIBNET_OPT_MCBIT   0x04
-#define LIBNET_OPT_NPBIT   0x08
-#define LIBNET_OPT_EABIT   0x10
-#define LIBNET_OPT_DCBIT   0x20
-#define LIBNET_MPLS_BOS_ON   1
-#define LIBNET_MPLS_BOS_OFF   0
-#define LIBNET_NTP_LI_NW   0x0
-#define LIBNET_NTP_LI_AS   0x1
-#define LIBNET_NTP_LI_DS   0x2
-#define LIBNET_NTP_LI_AC   0x3
-#define LIBNET_NTP_VN_2   0x2
-#define LIBNET_NTP_VN_3   0x3
-#define LIBNET_NTP_VN_4   0x4
-#define LIBNET_NTP_MODE_R   0x0
-#define LIBNET_NTP_MODE_A   0x1
-#define LIBNET_NTP_MODE_P   0x2
-#define LIBNET_NTP_MODE_C   0x3
-#define LIBNET_NTP_MODE_S   0x4
-#define LIBNET_NTP_MODE_B   0x5
-#define LIBNET_NTP_MODE_RC   0x6
-#define LIBNET_NTP_MODE_RP   0x7
-#define LIBNET_NTP_STRATUM_UNAVAIL   0x0
-#define LIBNET_NTP_STRATUM_PRIMARY   0x1
-#define LIBNET_NTP_REF_LOCAL   0x4c4f434c
-#define LIBNET_NTP_REF_PPS   0x50505300
-#define LIBNET_NTP_REF_ACTS   0x41435453
-#define LIBNET_NTP_REF_USNO   0x55534e4f
-#define LIBNET_NTP_REF_PTB   0x50544200
-#define LIBNET_NTP_REF_TDF   0x54444600
-#define LIBNET_NTP_REF_DCF   0x44434600
-#define LIBNET_NTP_REF_MSF   0x4d534600
-#define LIBNET_NTP_REF_WWV   0x57575600
-#define LIBNET_NTP_REF_WWVB   0x57575642
-#define LIBNET_NTP_REF_WWVH   0x57575648
-#define LIBNET_NTP_REF_CHU   0x43485500
-#define LIBNET_NTP_REF_LORC   0x4c4f5243
-#define LIBNET_NTP_REF_OMEG   0x4f4d4547
-#define LIBNET_NTP_REF_GPS   0x47505300
-#define LIBNET_NTP_REF_GOES   0x474f4553
-#define OSPFVERSION   2
-#define LIBNET_OSPF_UMD   0
-#define LIBNET_OSPF_HELLO   1
-#define LIBNET_OSPF_DBD   2
-#define LIBNET_OSPF_LSR   3
-#define LIBNET_OSPF_LSU   4
-#define LIBNET_OSPF_LSA   5
-#define LIBNET_OSPF_AUTH_NULL   0
-#define LIBNET_OSPF_AUTH_SIMPLE   1
-#define LIBNET_OSPF_AUTH_MD5   2
-#define LIBNET_DBD_IBI   0x01
-#define LIBNET_DBD_MBIT   0x02
-#define LIBNET_DBD_MSBIT   0x04
-#define LIBNET_LS_TYPE_RTR   1
-#define LIBNET_LS_TYPE_NET   2
-#define LIBNET_LS_TYPE_IP   3
-#define LIBNET_LS_TYPE_ASBR   4
-#define LIBNET_LS_TYPE_ASEXT   5
-#define LIBNET_RTR_FLAGS_W   0x0100
-#define LIBNET_RTR_FLAGS_E   0x0200
-#define LIBNET_RTR_FLAGS_B   0x0400
-#define LIBNET_LINK_ID_NBR_ID   1
-#define LIBNET_LINK_ID_IP_DES   2
-#define LIBNET_LINK_ID_SUB   3
-#define LIBNET_RTR_TYPE_PTP   1
-#define LIBNET_RTR_TYPE_TRANS   2
-#define LIBNET_RTR_TYPE_STUB   3
-#define RTR_TYPE_VRTL   4
-#define LIBNET_AS_E_BIT_ON   0x80000000
-#define RIPCMD_REQUEST   1
-#define RIPCMD_RESPONSE   2
-#define RIPCMD_TRACEON   3
-#define RIPCMD_TRACEOFF   4
-#define RIPCMD_POLL   5
-#define RIPCMD_POLLENTRY   6
-#define RIPCMD_MAX   7
-#define RIPVER_0   0
-#define RIPVER_1   1
-#define RIPVER_2   2
-#define LIBNET_RPC_CALL   0
-#define LIBNET_RPC_REPLY   1
-#define LIBNET_RPC_VERS   2
-#define LIBNET_RPC_LAST_FRAG   0x80000000
-#define LIBNET_PMAP_PROGRAM   100000
-#define LIBNET_PMAP_PROC_NULL   0
-#define LIBNET_PMAP_PROC_SET   1
-#define LIBNET_PMAP_PROC_UNSET   2
-#define LIBNET_PMAP_PROC_GETADDR   3
-#define LIBNET_PMAP_PROC_DUMP   4
-#define LIBNET_PMAP_PROC_CALLIT   5
-#define LIBNET_PMAP_PROC_BCAST   5
-#define LIBNET_PMAP_PROC_GETTIME   6
-#define LIBNET_PMAP_PROC_UADDR2TADDR   7
-#define LIBNET_PMAP_PROC_TADDR2UADDR   8
-#define LIBNET_PMAP_PROC_GETVERSADDR   9
-#define LIBNET_PMAP_PROC_INDIRECT   10
-#define LIBNET_PMAP_PROC_GETADDRLIST   11
-#define LIBNET_PMAP_PROC_GETSTAT   12
-#define TH_FIN   0x01
-#define TH_SYN   0x02
-#define TH_RST   0x04
-#define TH_PUSH   0x08
-#define TH_ACK   0x10
-#define TH_URG   0x20
-#define TH_ECE   0x40
-#define TH_CWR   0x80
-#define LIBNET_TOKEN_RING_FRAME   0x10
-#define LIBNET_TOKEN_RING_LLC_FRAME   0x40
-#define TOKEN_RING_TYPE_IP   0x0800
-#define TOKEN_RING_TYPE_ARP   0x0806
-#define TOKEN_RING_TYPE_REVARP   0x8035
-#define SEBEK_PROTO_VERSION   1
-#define SEBEK_TYPE_READ   0
-#define SEBEK_TYPE_WRITE   1
-#define SEBEK_CMD_LENGTH   12
-#define IPPROTO_VRRP   112
-#define LIBNET_VRRP_VERSION_01   0x1
-#define LIBNET_VRRP_VERSION_02   0x2
-#define LIBNET_VRRP_TYPE_ADVERT   0x1
-#define LIBNET_VRRP_AUTH_NONE   0x1
-#define LIBNET_VRRP_AUTH_PASSWD   0x2
-#define LIBNET_VRRP_AUTH_IPAH   0x3
-


Detailed Description

-libnet header information -

-


Define Documentation

-

- - - - -
- - -
#define LIBNET_802_1Q_CFIMASK   0x0001 -
-
- - - - - -
-   - - -

-CFI mask

-

- - - - -
- - -
#define LIBNET_802_1Q_H   0x12 -
-
- - - - - -
-   - - -

-802.1Q header: 18 bytes

-

- - - - -
- - -
#define LIBNET_802_1Q_PRIMASK   0x0007 -
-
- - - - - -
-   - - -

-priority mask

-

- - - - -
- - -
#define LIBNET_802_1Q_VIDMASK   0x0fff -
-
- - - - - -
-   - - -

-vid mask

-

- - - - -
- - -
#define LIBNET_802_1X_ENCASFAL   0x04 -
-
- - - - - -
-   - - -

-802.1x encasfal

-

- - - - -
- - -
#define LIBNET_802_1X_H   0x04 -
-
- - - - - -
-   - - -

-802.1X header: 4 bytes

-

- - - - -
- - -
#define LIBNET_802_1X_KEY   0x03 -
-
- - - - - -
-   - - -

-802.1x key

-

- - - - -
- - -
#define LIBNET_802_1X_LOGOFF   0x02 -
-
- - - - - -
-   - - -

-802.1x logoff

-

- - - - -
- - -
#define LIBNET_802_1X_PACKET   0x00 -
-
- - - - - -
-   - - -

-802.1x packet

-

- - - - -
- - -
#define LIBNET_802_1X_START   0x01 -
-
- - - - - -
-   - - -

-802.1x start

-

- - - - -
- - -
#define LIBNET_802_2_H   0x03 -
-
- - - - - -
-   - - -

-802.2 LLC header: 3 bytes

-

- - - - -
- - -
#define LIBNET_802_2SNAP_H   0x08 -
-
- - - - - -
-   - - -

-802.2 LLC/SNAP header:8 bytes

-

- - - - -
- - -
#define LIBNET_802_3_H   0x0e -
-
- - - - - -
-   - - -

-802.3 header: 14 bytes

-

- - - - -
- - -
#define LIBNET_ARP_ETH_IP_H   0x1c -
-
- - - - - -
-   - - -

-ARP w/ ETH and IP: 28 bytes

-

- - - - -
- - -
#define LIBNET_ARP_H   0x08 -
-
- - - - - -
-   - - -

-ARP header w/o addrs: 8 bytes

-

- - - - -
- - -
#define LIBNET_BGP4_HEADER_H   0x13 -
-
- - - - - -
-   - - -

-BGP header: 19 bytes

-

- - - - -
- - -
#define LIBNET_BGP4_NOTIFICATION_H   0x02 -
-
- - - - - -
-   - - -

-BGP notif. header: 2 bytes

-

- - - - -
- - -
#define LIBNET_BGP4_OPEN_H   0x0a -
-
- - - - - -
-   - - -

-BGP open header: 10 bytes

-

- - - - -
- - -
#define LIBNET_BGP4_UPDATE_H   0x04 -
-
- - - - - -
-   - - -

-BGP open header: 4 bytes

-

- - - - -
- - -
#define LIBNET_CDP_H   0x08 -
-
- - - - - -
-   - - -

-CDP header base: 8 bytes

-

- - - - -
- - -
#define LIBNET_DHCPV4_H   0xf0 -
-
- - - - - -
-   - - -

-DHCP v4 header: 240 bytes

-

- - - - -
- - -
#define LIBNET_ETH_H   0x0e -
-
- - - - - -
-   - - -

-Ethernet header: 14 bytes

-

- - - - -
- - -
#define LIBNET_FDDI_H   0x15 -
-
- - - - - -
-   - - -

-FDDI header: 21 bytes

-

- - - - -
- - -
#define LIBNET_GRE_H   0x04 -
-
- - - - - -
-   - - -

-GRE header: 4 bytes

-

- - - - -
- - -
#define LIBNET_GRE_SRE_H   0x04 -
-
- - - - - -
-   - - -

-GRE SRE header: 4 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_ECHO_H   0x08 -
-
- - - - - -
-   - - -

-ICMP_ECHO header: 8 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_H   0x04 -
-
- - - - - -
-   - - -

-ICMP header base: 4 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_MASK_H   0x0c -
-
- - - - - -
-   - - -

-ICMP_MASK header: 12 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_REDIRECT_H   0x08 -
-
- - - - - -
-   - - -

-ICMP_REDIRECT header: 8 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_TIMXCEED_H   0x08 -
-
- - - - - -
-   - - -

-ICMP_TIMXCEED header: 8 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_TS_H   0x14 -
-
- - - - - -
-   - - -

-ICMP_TIMESTAMP headr:20 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV4_UNREACH_H   0x08 -
-
- - - - - -
-   - - -

-ICMP_UNREACH header: 8 bytes

-

- - - - -
- - -
#define LIBNET_ICMPV6_H   0x08 -
-
- - - - - -
-   - - -

-ICMP6 header base: 8 bytes

-

- - - - -
- - -
#define LIBNET_IGMP_H   0x08 -
-
- - - - - -
-   - - -

-IGMP header: 8 bytes

-

- - - - -
- - -
#define LIBNET_IPSEC_AH_H   0x10 -
-
- - - - - -
-   - - -

-IPSEC AH header: 16 bytes

-

- - - - -
- - -
#define LIBNET_IPSEC_ESP_FTR_H   0x02 -
-
- - - - - -
-   - - -

-IPSEC ESP footer: 2 bytes

-

- - - - -
- - -
#define LIBNET_IPSEC_ESP_HDR_H   0x0c -
-
- - - - - -
-   - - -

-IPSEC ESP header: 12 bytes

-

- - - - -
- - -
#define LIBNET_IPV4_H   0x14 -
-
- - - - - -
-   - - -

-IPv4 header: 20 bytes

-

- - - - -
- - -
#define LIBNET_IPV6_DESTOPTS_H   0x02 -
-
- - - - - -
-   - - -

-IPv6 dest opts base: 2 bytes

-

- - - - -
- - -
#define LIBNET_IPV6_FRAG_H   0x08 -
-
- - - - - -
-   - - -

-IPv6 frag header: 8 bytes

-

- - - - -
- - -
#define LIBNET_IPV6_H   0x28 -
-
- - - - - -
-   - - -

-IPv6 header: 40 bytes

-

- - - - -
- - -
#define LIBNET_IPV6_HBHOPTS_H   0x02 -
-
- - - - - -
-   - - -

-IPv6 hop/hop opt base:2 bytes

-

- - - - -
- - -
#define LIBNET_IPV6_ROUTING_H   0x04 -
-
- - - - - -
-   - - -

-IPv6 frag header base:4 bytes

-

- - - - -
- - -
#define LIBNET_ISL_H   0x1a -
-
- - - - - -
-   - - -

-ISL header: 26 bytes

-

- - - - -
- - -
#define LIBNET_MPLS_H   0x04 -
-
- - - - - -
-   - - -

-MPLS header: 4 bytes

-

- - - - -
- - -
#define LIBNET_NTP_H   0x30 -
-
- - - - - -
-   - - -

-NTP header: 48 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_AUTH_H   0x08 -
-
- - - - - -
-   - - -

-OSPF AUTH header: 8 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_CKSUM   0x10 -
-
- - - - - -
-   - - -

-OSPF CKSUM header: 16 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_DBD_H   0x08 -
-
- - - - - -
-   - - -

-OSPF DBD header: 8 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_H   0x10 -
-
- - - - - -
-   - - -

-OSPF header: 16 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_HELLO_H   0x18 -
-
- - - - - -
-   - - -

-OSPF hello header: 24 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LS_AS_EXT_H   0x10 -
-
- - - - - -
-   - - -

-OSPF LS AS header: 16 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LS_NET_H   0x08 -
-
- - - - - -
-   - - -

-OSPF LS NET header: 8 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LS_RTR_H   0x10 -
-
- - - - - -
-   - - -

-OSPF LS RTR header: 16 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LS_SUM_H   0x0c -
-
- - - - - -
-   - - -

-OSPF LS SUM header: 12 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LSA_H   0x14 -
-
- - - - - -
-   - - -

-OSPF LSA header: 20 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LSR_H   0x0c -
-
- - - - - -
-   - - -

-OSPF LSR header: 12 bytes

-

- - - - -
- - -
#define LIBNET_OSPF_LSU_H   0x04 -
-
- - - - - -
-   - - -

-OSPF LSU header: 4 bytes

-

- - - - -
- - -
#define LIBNET_RIP_H   0x18 -
-
- - - - - -
-   - - -

-RIP header base: 24 bytes

-

- - - - -
- - -
#define LIBNET_RPC_CALL_H   0x28 -
-
- - - - - -
-   - - -

-RPC header: 40 bytes (assuming 8 byte auth header)

-

- - - - -
- - -
#define LIBNET_RPC_CALL_TCP_H   0x2c -
-
- - - - - -
-   - - -

-RPC header: 44 bytes (with record marking)

-

- - - - -
- - -
#define LIBNET_STP_CONF_H   0x23 -
-
- - - - - -
-   - - -

-STP conf header: 35 bytes

-

- - - - -
- - -
#define LIBNET_STP_TCN_H   0x04 -
-
- - - - - -
-   - - -

-STP tcn header: 4 bytes

-

- - - - -
- - -
#define LIBNET_TCP_DNSV4_H   0x0e -
-
- - - - - -
-   - - -

-TCP DNS v4 header: 14 bytes

-

- - - - -
- - -
#define LIBNET_TCP_H   0x14 -
-
- - - - - -
-   - - -

-TCP header: 20 bytes

-

- - - - -
- - -
#define LIBNET_TOKEN_RING_H   0x16 -
-
- - - - - -
-   - - -

-Token Ring header: 22 bytes

-

- - - - -
- - -
#define LIBNET_UDP_DNSV4_H   0x0c -
-
- - - - - -
-   - - -

-UDP DNS v4 header: 12 bytes

-

- - - - -
- - -
#define LIBNET_UDP_H   0x08 -
-
- - - - - -
-   - - -

-UDP header: 8 bytes

-

- - - - -
- - -
#define LIBNET_VRRP_H   0x08 -
-
- - - - - -
-   - - -

-VRRP header: 8 bytes

-


Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-macros_8h-source.html b/libnet/doc/html/libnet-macros_8h-source.html deleted file mode 100644 index 70c55d1..0000000 --- a/libnet/doc/html/libnet-macros_8h-source.html +++ /dev/null @@ -1,161 +0,0 @@ - - -libnet: libnet-macros.h Source File - - - - -

libnet-macros.h

Go to the documentation of this file.
00001 /*
-00002  *  $Id: libnet-macros.h,v 1.6 2004/03/01 20:26:12 mike Exp $
-00003  *
-00004  *  libnet-macros.h - Network routine library macro header file
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  * 1. Redistributions of source code must retain the above copyright
-00013  *    notice, this list of conditions and the following disclaimer.
-00014  * 2. Redistributions in binary form must reproduce the above copyright
-00015  *    notice, this list of conditions and the following disclaimer in the
-00016  *    documentation and/or other materials provided with the distribution.
-00017  *
-00018  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00019  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00020  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00021  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00022  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00023  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00024  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00025  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00026  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00027  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00028  * SUCH DAMAGE.
-00029  *
-00030  */
-00031 
-00032 #ifndef __LIBNET_MACROS_H
-00033 #define __LIBNET_MACROS_H
-00034 
-00039 /* for systems without snprintf */
-00040 #if defined(NO_SNPRINTF)
-00041 #define snprintf(buf, len, args...) sprintf(buf, ##args)
-00042 #endif
-00043 
-00044 
-00049 #define LIBNET_DONT_RESOLVE 0
-00050 
-00055 #define LIBNET_RESOLVE      1
-00056 
-00060 #define LIBNET_ON   0
-00061 
-00065 #define LIBNET_OFF  1
-00066 
-00070 #ifndef IN6ADDR_ERROR_INIT
-00071 #define IN6ADDR_ERROR_INIT { { { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
-00072                                  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
-00073                                  0xff, 0xff } } }
-00074 #endif
-00075 
-00079 #define LIBNET_PR2          0
-00080 #define LIBNET_PR8          1
-00081 #define LIBNET_PR16         2
-00082 #define LIBNET_PRu16        3
-00083 #define LIBNET_PR32         4
-00084 #define LIBNET_PRu32        5
-00085 #define LIBNET_PRAND_MAX    0xffffffff
-00086 
-00090 #define LIBNET_MAX_PACKET   0xffff
-00091 #ifndef IP_MAXPACKET
-00092 #define IP_MAXPACKET        0xffff
-00093 #endif
-00094 
-00095 
-00096 /* ethernet addresses are 6 octets long */
-00097 #ifndef ETHER_ADDR_LEN
-00098 #define ETHER_ADDR_LEN      0x6
-00099 #endif
-00100 
-00101 /* FDDI addresses are 6 octets long */
-00102 #ifndef FDDI_ADDR_LEN
-00103 #define FDDI_ADDR_LEN       0x6
-00104 #endif
-00105 
-00106 /* token ring addresses are 6 octets long */
-00107 #ifndef TOKEN_RING_ADDR_LEN
-00108 #define TOKEN_RING_ADDR_LEN 0x6
-00109 #endif
-00110 
-00111 /* LLC Organization Code is 3 bytes long */
-00112 #define LIBNET_ORG_CODE_SIZE  0x3
-00113 
-00117 #define LIBNET_ERRBUF_SIZE      0x100
-00118 
-00122 #define LIBNET_MAXOPTION_SIZE   0x28
-00123 
-00124 /* some BSD variants have this endianess problem */
-00125 #if (LIBNET_BSD_BYTE_SWAP)
-00126 #define FIX(n)      ntohs(n)
-00127 #define UNFIX(n)    htons(n)
-00128 #else
-00129 #define FIX(n)      (n)
-00130 #define UNFIX(n)    (n)
-00131 #endif
-00132 
-00133 /* used internally for checksum stuff */
-00134 #define LIBNET_CKSUM_CARRY(x) \
-00135     (x = (x >> 16) + (x & 0xffff), (~(x + (x >> 16)) & 0xffff))
-00136 
-00137 /* used interally for OSPF stuff */
-00138 #define LIBNET_OSPF_AUTHCPY(x, y) \
-00139     memcpy((u_int8_t *)x, (u_int8_t *)y, sizeof(y))
-00140 #define LIBNET_OSPF_CKSUMBUF(x, y) \
-00141     memcpy((u_int8_t *)x, (u_int8_t *)y, sizeof(y))  
-00142 
-00143 /* used internally for NTP leap indicator, version, and mode */
-00144 #define LIBNET_NTP_DO_LI_VN_MODE(li, vn, md) \
-00145     ((u_int8_t)((((li) << 6) & 0xc0) | (((vn) << 3) & 0x38) | ((md) & 0x7)))
-00146 
-00147 /* Not all systems have IFF_LOOPBACK */
-00148 #ifdef IFF_LOOPBACK
-00149 #define LIBNET_ISLOOPBACK(p) ((p)->ifr_flags & IFF_LOOPBACK)
-00150 #else
-00151 #define LIBNET_ISLOOPBACK(p) (strcmp((p)->ifr_name, "lo0") == 0)
-00152 #endif
-00153 
-00154 /* advanced mode check */
-00155 #define LIBNET_ISADVMODE(x) (x & 0x08)
-00156 
-00157 /* context queue macros and constants */
-00158 #define LIBNET_LABEL_SIZE   64
-00159 #define LIBNET_LABEL_DEFAULT "cardshark"
-00160 #define CQ_LOCK_UNLOCKED    (u_int)0x00000000
-00161 #define CQ_LOCK_READ        (u_int)0x00000001
-00162 #define CQ_LOCK_WRITE       (u_int)0x00000002
-00163 
-00169 #define for_each_context_in_cq(l) \
-00170     for (l = libnet_cq_head(); libnet_cq_last(); l = libnet_cq_next())
-00171 
-00172 /* return 1 if write lock is set on cq */
-00173 #define cq_is_wlocked() (l_cqd.cq_lock & CQ_LOCK_WRITE)
-00174 
-00175 /* return 1 if read lock is set on cq */
-00176 #define cq_is_rlocked() (l_cqd.cq_lock & CQ_LOCK_READ)
-00177 
-00178 /* return 1 if any lock is set on cq */
-00179 #define cq_is_locked() (l_cqd.cq_lock & (CQ_LOCK_READ | CQ_LOCK_WRITE))
-00180 
-00181 /* check if a context queue is locked */
-00182 #define check_cq_lock(x) (l_cqd.cq_lock & x)
-00183 
-00184 #endif  /* __LIBNET_MACROS_H */
-00185 
-00186 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-macros_8h.html b/libnet/doc/html/libnet-macros_8h.html deleted file mode 100644 index 4ef2a5b..0000000 --- a/libnet/doc/html/libnet-macros_8h.html +++ /dev/null @@ -1,358 +0,0 @@ - - -libnet: libnet-macros.h File Reference - - - - -

libnet-macros.h File Reference

libnet macros and symbloc constants -More... -

- -

-Go to the source code of this file. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Defines

#define LIBNET_DONT_RESOLVE   0
#define LIBNET_RESOLVE   1
#define LIBNET_ON   0
#define LIBNET_OFF   1
#define IN6ADDR_ERROR_INIT
#define LIBNET_PR2   0
-#define LIBNET_PR8   1
-#define LIBNET_PR16   2
-#define LIBNET_PRu16   3
-#define LIBNET_PR32   4
-#define LIBNET_PRu32   5
-#define LIBNET_PRAND_MAX   0xffffffff
#define LIBNET_MAX_PACKET   0xffff
-#define IP_MAXPACKET   0xffff
-#define ETHER_ADDR_LEN   0x6
-#define FDDI_ADDR_LEN   0x6
-#define TOKEN_RING_ADDR_LEN   0x6
-#define LIBNET_ORG_CODE_SIZE   0x3
#define LIBNET_ERRBUF_SIZE   0x100
#define LIBNET_MAXOPTION_SIZE   0x28
-#define FIX(n)   (n)
-#define UNFIX(n)   (n)
-#define LIBNET_CKSUM_CARRY(x)   (x = (x >> 16) + (x & 0xffff), (~(x + (x >> 16)) & 0xffff))
-#define LIBNET_OSPF_AUTHCPY(x, y)   memcpy((u_int8_t *)x, (u_int8_t *)y, sizeof(y))
-#define LIBNET_OSPF_CKSUMBUF(x, y)   memcpy((u_int8_t *)x, (u_int8_t *)y, sizeof(y))
-#define LIBNET_NTP_DO_LI_VN_MODE(li, vn, md)   ((u_int8_t)((((li) << 6) & 0xc0) | (((vn) << 3) & 0x38) | ((md) & 0x7)))
-#define LIBNET_ISLOOPBACK(p)   (strcmp((p)->ifr_name, "lo0") == 0)
-#define LIBNET_ISADVMODE(x)   (x & 0x08)
-#define LIBNET_LABEL_SIZE   64
-#define LIBNET_LABEL_DEFAULT   "cardshark"
-#define CQ_LOCK_UNLOCKED   (u_int)0x00000000
-#define CQ_LOCK_READ   (u_int)0x00000001
-#define CQ_LOCK_WRITE   (u_int)0x00000002
#define for_each_context_in_cq(l)   for (l = libnet_cq_head(); libnet_cq_last(); l = libnet_cq_next())
-#define cq_is_wlocked()   (l_cqd.cq_lock & CQ_LOCK_WRITE)
-#define cq_is_rlocked()   (l_cqd.cq_lock & CQ_LOCK_READ)
-#define cq_is_locked()   (l_cqd.cq_lock & (CQ_LOCK_READ | CQ_LOCK_WRITE))
-#define check_cq_lock(x)   (l_cqd.cq_lock & x)
-


Detailed Description

-libnet macros and symbloc constants -

-


Define Documentation

-

- - - - -
- - - - - - - -
#define for_each_context_in_cq  )    for (l = libnet_cq_head(); libnet_cq_last(); l = libnet_cq_next()) -
-
- - - - - -
-   - - -

-Provides an interface to iterate through the context queue of libnet contexts. Before calling this macro, be sure to set the queue using libnet_cq_head().

-

- - - - -
- - -
#define IN6ADDR_ERROR_INIT -
-
- - - - - -
-   - - -

-Value:

{ { { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
-                                 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \
-                                 0xff, 0xff } } }
-
IPv6 error code
-

- - - - -
- - -
#define LIBNET_DONT_RESOLVE   0 -
-
- - - - - -
-   - - -

-Used for libnet's name resolution functions, specifies that no DNS lookups should be performed and the IP address should be kept in numeric form.

-

- - - - -
- - -
#define LIBNET_ERRBUF_SIZE   0x100 -
-
- - - - - -
-   - - -

-The libnet error buffer is 256 bytes long.

-

- - - - -
- - -
#define LIBNET_MAX_PACKET   0xffff -
-
- - - - - -
-   - - -

-The biggest an IP packet can be -- 65,535 bytes.

-

- - - - -
- - -
#define LIBNET_MAXOPTION_SIZE   0x28 -
-
- - - - - -
-   - - -

-IP and TCP options can be up to 40 bytes long.

-

- - - - -
- - -
#define LIBNET_OFF   1 -
-
- - - - - -
-   - - -

-Used several places, to specify "on" or "one"

-

- - - - -
- - -
#define LIBNET_ON   0 -
-
- - - - - -
-   - - -

-Used several places, to specify "on" or "one"

-

- - - - -
- - -
#define LIBNET_PR2   0 -
-
- - - - - -
-   - - -

-Used for libnet_get_prand() to specify function disposition

-

- - - - -
- - -
#define LIBNET_RESOLVE   1 -
-
- - - - - -
-   - - -

-Used for libnet's name resolution functions, specifies that a DNS lookup can be performed if needed to resolve the IP address to a canonical form.

-


Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-structures_8h-source.html b/libnet/doc/html/libnet-structures_8h-source.html deleted file mode 100644 index 438fe1f..0000000 --- a/libnet/doc/html/libnet-structures_8h-source.html +++ /dev/null @@ -1,233 +0,0 @@ - - -libnet: libnet-structures.h Source File - - - - -

libnet-structures.h

00001 /*
-00002  *  $Id: libnet-structures.h,v 1.16 2004/02/16 23:13:38 mike Exp $
-00003  *
-00004  *  libnet-structures.h - Network routine library structures header file
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  * 1. Redistributions of source code must retain the above copyright
-00013  *    notice, this list of conditions and the following disclaimer.
-00014  * 2. Redistributions in binary form must reproduce the above copyright
-00015  *    notice, this list of conditions and the following disclaimer in the
-00016  *    documentation and/or other materials provided with the distribution.
-00017  *
-00018  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00019  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00020  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00021  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00022  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00023  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00024  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00025  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00026  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00027  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00028  * SUCH DAMAGE.
-00029  *
-00030  */
-00031 
-00032 #ifndef __LIBNET_STRUCTURES_H
-00033 #define __LIBNET_STRUCTURES_H
-00034 
-00035 #if ((__WIN32__) && !(__CYGWIN__))
-00036 #include "Packet32.h"
-00037 #endif
-00038 
-00039 /* port list chain structure */
-00040 typedef struct libnet_port_list_chain libnet_plist_t;
-00041 struct libnet_port_list_chain
-00042 {
-00043     u_int16_t node;                     /* node number */
-00044     u_int16_t bport;                    /* beggining port */
-00045     u_int16_t eport;                    /* terminating port */
-00046     u_int8_t  id;                       /* global array offset */
-00047     libnet_plist_t *next;               /* next node in the list */
-00048 };
-00049 
-00050 
-00051 /* libnet statistics structure */
-00052 struct libnet_stats
-00053 {
-00054 #if (!defined(__WIN32__) || (__CYGWIN__))
-00055     u_int64_t packets_sent;             /* packets sent */
-00056     u_int64_t packet_errors;            /* packets errors */
-00057     u_int64_t bytes_written;            /* bytes written */
-00058 #else
-00059     __int64 packets_sent;               /* packets sent */
-00060     __int64 packet_errors;              /* packets errors */
-00061     __int64 bytes_written;              /* bytes written */
-00062 #endif
-00063 };
-00064 
-00065 
-00066 /*
-00067  *  Libnet ptags are how we identify specific protocol blocks inside the
-00068  *  list.
-00069  */
-00070 typedef int32_t libnet_ptag_t;
-00071 #define LIBNET_PTAG_INITIALIZER         0
-00072 
-00073 
-00074 /*
-00075  *  Libnet generic protocol block memory object.  Sort of a poor man's mbuf.
-00076  */
-00077 struct libnet_protocol_block
-00078 {
-00079     u_int8_t *buf;                      /* protocol buffer */
-00080     u_int32_t b_len;                    /* length of buf */
-00081     u_int16_t h_len;                    /* header length (for checksumming) */
-00082     u_int32_t copied;                   /* bytes copied */
-00083     u_int8_t type;                      /* type of pblock */
-00084 /* this needs to be updated every time a new packet builder is added */
-00085 #define LIBNET_PBLOCK_ARP_H             0x01    /* ARP header */
-00086 #define LIBNET_PBLOCK_DHCPV4_H          0x02    /* DHCP v4 header */
-00087 #define LIBNET_PBLOCK_DNSV4_H           0x03    /* DNS v4 header */
-00088 #define LIBNET_PBLOCK_ETH_H             0x04    /* Ethernet header */
-00089 #define LIBNET_PBLOCK_ICMPV4_H          0x05    /* ICMP v4 base header */
-00090 #define LIBNET_PBLOCK_ICMPV4_ECHO_H     0x06    /* ICMP v4 echo header */
-00091 #define LIBNET_PBLOCK_ICMPV4_MASK_H     0x07    /* ICMP v4 mask header */
-00092 #define LIBNET_PBLOCK_ICMPV4_UNREACH_H  0x08    /* ICMP v4 unreach header */
-00093 #define LIBNET_PBLOCK_ICMPV4_TIMXCEED_H 0x09    /* ICMP v4 exceed header */
-00094 #define LIBNET_PBLOCK_ICMPV4_REDIRECT_H 0x0a    /* ICMP v4 redirect header */
-00095 #define LIBNET_PBLOCK_ICMPV4_TS_H       0x0b    /* ICMP v4 timestamp header */
-00096 #define LIBNET_PBLOCK_IGMP_H            0x0c    /* IGMP header */
-00097 #define LIBNET_PBLOCK_IPV4_H            0x0d    /* IP v4 header */
-00098 #define LIBNET_PBLOCK_IPO_H             0x0e    /* IP v4 options */
-00099 #define LIBNET_PBLOCK_IPDATA            0x0f    /* IP data */
-00100 #define LIBNET_PBLOCK_OSPF_H            0x10    /* OSPF base header */
-00101 #define LIBNET_PBLOCK_OSPF_HELLO_H      0x11    /* OSPF hello header */
-00102 #define LIBNET_PBLOCK_OSPF_DBD_H        0x12    /* OSPF dbd header */
-00103 #define LIBNET_PBLOCK_OSPF_LSR_H        0x13    /* OSPF lsr header */
-00104 #define LIBNET_PBLOCK_OSPF_LSU_H        0x14    /* OSPF lsu header */
-00105 #define LIBNET_PBLOCK_OSPF_LSA_H        0x15    /* OSPF lsa header */
-00106 #define LIBNET_PBLOCK_OSPF_AUTH_H       0x16    /* OSPF auth header */
-00107 #define LIBNET_PBLOCK_OSPF_CKSUM        0x17    /* OSPF checksum header */
-00108 #define LIBNET_PBLOCK_LS_RTR_H          0x18    /* linkstate rtr header */
-00109 #define LIBNET_PBLOCK_LS_NET_H          0x19    /* linkstate net header */
-00110 #define LIBNET_PBLOCK_LS_SUM_H          0x1a    /* linkstate as sum header */
-00111 #define LIBNET_PBLOCK_LS_AS_EXT_H       0x1b    /* linkstate as ext header */
-00112 #define LIBNET_PBLOCK_NTP_H             0x1c    /* NTP header */
-00113 #define LIBNET_PBLOCK_RIP_H             0x1d    /* RIP header */
-00114 #define LIBNET_PBLOCK_TCP_H             0x1e    /* TCP header */
-00115 #define LIBNET_PBLOCK_TCPO_H            0x1f    /* TCP options */
-00116 #define LIBNET_PBLOCK_TCPDATA           0x20    /* TCP data */
-00117 #define LIBNET_PBLOCK_UDP_H             0x21    /* UDP header */
-00118 #define LIBNET_PBLOCK_VRRP_H            0x22    /* VRRP header */
-00119 #define LIBNET_PBLOCK_DATA_H            0x23    /* generic data */
-00120 #define LIBNET_PBLOCK_CDP_H             0x24    /* CDP header */
-00121 #define LIBNET_PBLOCK_IPSEC_ESP_HDR_H   0x25    /* IPSEC ESP header */
-00122 #define LIBNET_PBLOCK_IPSEC_ESP_FTR_H   0x26    /* IPSEC ESP footer */
-00123 #define LIBNET_PBLOCK_IPSEC_AH_H        0x27    /* IPSEC AH header */
-00124 #define LIBNET_PBLOCK_802_1Q_H          0x28    /* 802.1q header */
-00125 #define LIBNET_PBLOCK_802_2_H           0x29    /* 802.2 header */
-00126 #define LIBNET_PBLOCK_802_2SNAP_H       0x2a    /* 802.2 SNAP header */
-00127 #define LIBNET_PBLOCK_802_3_H           0x2b    /* 802.3 header */
-00128 #define LIBNET_PBLOCK_STP_CONF_H        0x2c    /* STP configuration header */
-00129 #define LIBNET_PBLOCK_STP_TCN_H         0x2d    /* STP TCN header */
-00130 #define LIBNET_PBLOCK_ISL_H             0x2e    /* ISL header */
-00131 #define LIBNET_PBLOCK_IPV6_H            0x2f    /* IP v6 header */
-00132 #define LIBNET_PBLOCK_802_1X_H          0x30    /* 802.1x header */
-00133 #define LIBNET_PBLOCK_RPC_CALL_H        0x31    /* RPC Call header */
-00134 #define LIBNET_PBLOCK_MPLS_H            0x32    /* MPLS header */
-00135 #define LIBNET_PBLOCK_FDDI_H            0x33    /* FDDI header */
-00136 #define LIBNET_PBLOCK_TOKEN_RING_H      0x34    /* TOKEN RING header */
-00137 #define LIBNET_PBLOCK_BGP4_HEADER_H     0x35    /* BGP4 header */
-00138 #define LIBNET_PBLOCK_BGP4_OPEN_H       0x36    /* BGP4 open header */
-00139 #define LIBNET_PBLOCK_BGP4_UPDATE_H     0x37    /* BGP4 update header */
-00140 #define LIBNET_PBLOCK_BGP4_NOTIFICATION_H 0x38  /* BGP4 notification header */
-00141 #define LIBNET_PBLOCK_GRE_H             0x39    /* GRE header */
-00142 #define LIBNET_PBLOCK_GRE_SRE_H         0x3a    /* GRE SRE header */
-00143 #define LIBNET_PBLOCK_IPV6_FRAG_H       0x3b    /* IPv6 frag header */
-00144 #define LIBNET_PBLOCK_IPV6_ROUTING_H    0x3c    /* IPv6 routing header */
-00145 #define LIBNET_PBLOCK_IPV6_DESTOPTS_H   0x3d    /* IPv6 dest opts header */
-00146 #define LIBNET_PBLOCK_IPV6_HBHOPTS_H    0x3e    /* IPv6 hop/hop opts header */
-00147 #define LIBNET_PBLOCK_SEBEK_H           0x3f    /* Sebek header */
-00148     u_int8_t flags;                             /* control flags */
-00149 #define LIBNET_PBLOCK_DO_CHECKSUM       0x01    /* needs a checksum */
-00150     libnet_ptag_t ptag;                 /* protocol block tag */
-00151     struct libnet_protocol_block *next; /* next pblock */
-00152     struct libnet_protocol_block *prev; /* prev pblock */
-00153 };
-00154 typedef struct libnet_protocol_block libnet_pblock_t;
-00155 
-00156 
-00157 /*
-00158  *  Libnet context
-00159  *  Opaque structure.  Nothing in here should ever been touched first hand by
-00160  *  the applications programmer.
-00161  */
-00162 struct libnet_context
-00163 {
-00164 #if ((__WIN32__) && !(__CYGWIN__)) 
-00165     SOCKET fd;
-00166     LPADAPTER  lpAdapter;
-00167 #else
-00168     int fd;                             /* file descriptor of packet device */
-00169 #endif
-00170     int injection_type;                 /* raw (ipv4 or ipv6) or link */
-00171 #define LIBNET_LINK     0x00            /* link-layer interface */
-00172 #define LIBNET_RAW4     0x01            /* raw socket interface (ipv4) */
-00173 #define LIBNET_RAW6     0x02            /* raw socket interface (ipv6) */
-00174 /* the following should actually set a flag in the flags variable above */
-00175 #define LIBNET_LINK_ADV 0x08            /* advanced mode link-layer */
-00176 #define LIBNET_RAW4_ADV 0x09            /* advanced mode raw socket (ipv4) */
-00177 #define LIBNET_RAW6_ADV 0x0a            /* advanced mode raw socket (ipv6) */
-00178 #define LIBNET_ADV_MASK 0x08            /* mask to determine adv mode */
-00179 
-00180     libnet_pblock_t *protocol_blocks;   /* protocol headers / data */
-00181     libnet_pblock_t *pblock_end;        /* last node in list */
-00182 
-00183     int link_type;                      /* link-layer type */
-00184     int link_offset;                    /* link-layer header size */
-00185     int aligner;                        /* used to align packets */
-00186     char *device;                       /* device name */
-00187 
-00188     struct libnet_stats stats;          /* statistics */
-00189     libnet_ptag_t ptag_state;           /* state holder for pblock tag */
-00190     char label[LIBNET_LABEL_SIZE];      /* textual label for cq interface */
-00191 
-00192     char err_buf[LIBNET_ERRBUF_SIZE];   /* error buffer */
-00193     u_int32_t total_size;               /* total size */
-00194 };
-00195 typedef struct libnet_context libnet_t;
-00196 
-00197 /*
-00198  *  Libnet context queue structure
-00199  *  Opaque structure.  Nothing in here should ever been touched first hand by
-00200  *  the applications programmer.
-00201  */
-00202 typedef struct _libnet_context_queue libnet_cq_t;
-00203 struct _libnet_context_queue
-00204 {
-00205     libnet_t *context;                  /* pointer to libnet context */
-00206     libnet_cq_t *next;                  /* next node in the list */
-00207     libnet_cq_t *prev;                  /* previous node in the list */
-00208 };
-00209 
-00210 struct _libnet_context_queue_descriptor
-00211 {
-00212     u_int32_t node;                     /* number of nodes in the list */
-00213     u_int32_t cq_lock;                  /* lock status */
-00214     libnet_cq_t *current;               /* current context */
-00215 };
-00216 typedef struct _libnet_context_queue_descriptor libnet_cqd_t;
-00217 
-00218 #endif  /* __LIBNET_STRUCTURES_H */
-00219 
-00220 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet-types_8h-source.html b/libnet/doc/html/libnet-types_8h-source.html deleted file mode 100644 index b7d24c1..0000000 --- a/libnet/doc/html/libnet-types_8h-source.html +++ /dev/null @@ -1,58 +0,0 @@ - - -libnet: libnet-types.h Source File - - - - -

libnet-types.h

00001 /*
-00002  *  $Id: libnet-types.h,v 1.3 2004/01/03 20:31:00 mike Exp $
-00003  *
-00004  *  libnet-types.h - Network routine library macro header file
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  * 1. Redistributions of source code must retain the above copyright
-00013  *    notice, this list of conditions and the following disclaimer.
-00014  * 2. Redistributions in binary form must reproduce the above copyright
-00015  *    notice, this list of conditions and the following disclaimer in the
-00016  *    documentation and/or other materials provided with the distribution.
-00017  *
-00018  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00019  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00020  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00021  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00022  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00023  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00024  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00025  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00026  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00027  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00028  * SUCH DAMAGE.
-00029  *
-00030  */
-00031 
-00032 #ifndef __LIBNET_TYPES_H
-00033 #define __LIBNET_TYPES_H
-00034 
-00035 /* Solaris has messed up POSIX nomenclature for these */
-00036 #if (__sun__ && __svr4__)
-00037 typedef uint8_t  u_int8_t;
-00038 typedef uint16_t u_int16_t;
-00039 typedef uint32_t u_int32_t;
-00040 typedef uint64_t u_int64_t;
-00041 #endif
-00042 
-00043 #endif  /* __LIBNET_TYPES_H */
-00044 
-00045 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet_8h-source.html b/libnet/doc/html/libnet_8h-source.html deleted file mode 100644 index 42a8723..0000000 --- a/libnet/doc/html/libnet_8h-source.html +++ /dev/null @@ -1,119 +0,0 @@ - - -libnet: libnet.h Source File - - - - -

libnet.h

Go to the documentation of this file.
00001 /*
-00002  *  $Id: libnet.h,v 1.7 2004/01/03 20:31:00 mike Exp $
-00003  *
-00004  *  libnet.h - Network routine library header file for Win32 VC++
-00005  *
-00006  *  Copyright (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
-00007  *  All rights reserved.
-00008  *
-00009  * Redistribution and use in source and binary forms, with or without
-00010  * modification, are permitted provided that the following conditions
-00011  * are met:
-00012  * 1. Redistributions of source code must retain the above copyright
-00013  *    notice, this list of conditions and the following disclaimer.
-00014  * 2. Redistributions in binary form must reproduce the above copyright
-00015  *    notice, this list of conditions and the following disclaimer in the
-00016  *    documentation and/or other materials provided with the distribution.
-00017  *
-00018  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-00019  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-00020  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-00021  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-00022  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-00023  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-00024  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-00025  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-00026  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-00027  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-00028  * SUCH DAMAGE.
-00029  *
-00030  */
-00031 
-00032 #ifdef _WIN32
-00033 
-00034 #ifndef __LIBNET_H
-00035 #define __LIBNET_H
-00036 
-00037 #include <winsock2.h>
-00038 #include <windows.h>
-00039 #include <time.h>
-00040 #include "in_systm.h"
-00041 #include "pcap.h"
-00042 
-00043 
-00044 #ifdef __cplusplus
-00045 extern "C" {
-00046 #endif
-00047 
-00048 /* __WIN32__ is NOT a predefined MACRO, use _WIN32
-00049  * __CYGWIN__ is defined within the cygwin environment.
-00050  */ 
-00051 #ifndef __WIN32__
-00052 #define __WIN32__ _WIN32
-00053 #endif
-00054 
-00055 #define LIBNET_LIL_ENDIAN 1
-00056 #define HAVE_CONFIG_H 1
-00057 
-00058 /* Some UNIX to Win32 conversions */
-00059 #define STDOUT_FILENO stdout
-00060 #define snprintf _snprintf 
-00061 #define write _write
-00062 #define open _open
-00063 #define random rand
-00064 #define close closesocket
-00065 #define __func__ __FUNCTION__
-00066 
-00067 /* __FUNCTION__ available in VC ++ 7.0 (.NET) and greater */
-00068 #if _MSC_VER < 1300
-00069 #define __FUNCTION__ __FILE__
-00070 #endif
-00071 
-00072 #pragma comment (lib,"ws2_32")    /* Winsock 2 */
-00073 #pragma comment (lib,"iphlpapi")  /* IP Helper */
-00074 #pragma comment (lib,"wpcap")     /* Winpcap   */
-00075 #pragma comment (lib,"packet")   
-00076 
-00077 /* "@LIBNET_VERSION@" will not work in VC++, so version.h doesn't get populated */
-00078 #define VERSION  "1.1.1"
-00079 
-00080 /* To use Win32 native versions */
-00081 #define WPCAP 1
-00082 #define _GNU_SOURCE
-00083 #include <stdio.h>
-00084 #include <string.h>
-00085 #include <fcntl.h>
-00086 #include <signal.h>
-00087 #include <stdlib.h>
-00088 #include <sys/stat.h>
-00089 #include <sys/types.h>
-00090 #include <ctype.h>
-00091 #include <errno.h>
-00092 #include <stdarg.h>
-00093 #include "../libnet/libnet-macros.h"
-00094 #include "../libnet/libnet-headers.h"
-00095 #include "../libnet/libnet-structures.h"
-00096 #include "../libnet/libnet-asn1.h"
-00097 #include "../libnet/libnet-functions.h"
-00098 
-00099 #ifdef __cplusplus
-00100 }
-00101 #endif
-00102 
-00103 #endif  /* __LIBNET_H */
-00104 
-00105 #endif
-00106 /* EOF */
-

Generated on Wed Mar 10 13:23:37 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/libnet_8h.html b/libnet/doc/html/libnet_8h.html deleted file mode 100644 index 03334ad..0000000 --- a/libnet/doc/html/libnet_8h.html +++ /dev/null @@ -1,24 +0,0 @@ - - -libnet: libnet.h File Reference - - - - -

libnet.h File Reference

toplevel libnet header file -More... -

- -

-Go to the source code of this file. - -
-


Detailed Description

-toplevel libnet header file -

-


Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/structlibnet__802__1q__hdr.html b/libnet/doc/html/structlibnet__802__1q__hdr.html deleted file mode 100644 index b57c044..0000000 --- a/libnet/doc/html/structlibnet__802__1q__hdr.html +++ /dev/null @@ -1,145 +0,0 @@ - - -libnet: libnet_802_1q_hdr struct Reference - - - - -

libnet_802_1q_hdr Struct Reference

#include <libnet-headers.h> -

- - - - - - - - - - - - - -

Data Fields

u_int8_t vlan_dhost [ETHER_ADDR_LEN]
u_int8_t vlan_shost [ETHER_ADDR_LEN]
u_int16_t vlan_tpi
u_int16_t vlan_priority_c_vid
u_int16_t vlan_len
-


Detailed Description

-IEEE 802.1Q (Virtual Local Area Network) VLAN header, static header size: 18 bytes -

-


Field Documentation

-

- - - - -
- - -
u_int8_t libnet_802_1q_hdr::vlan_dhost[ETHER_ADDR_LEN] -
-
- - - - - -
-   - - -

-destination ethernet address

-

- - - - -
- - -
u_int16_t libnet_802_1q_hdr::vlan_len -
-
- - - - - -
-   - - -

-length or type (802.3 / Eth 2)

-

- - - - -
- - -
u_int16_t libnet_802_1q_hdr::vlan_priority_c_vid -
-
- - - - - -
-   - - -

-priority | VLAN ID

-

- - - - -
- - -
u_int8_t libnet_802_1q_hdr::vlan_shost[ETHER_ADDR_LEN] -
-
- - - - - -
-   - - -

-source ethernet address

-

- - - - -
- - -
u_int16_t libnet_802_1q_hdr::vlan_tpi -
-
- - - - - -
-   - - -

-tag protocol ID

-


The documentation for this struct was generated from the following file: -
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/html/structlibnet__802__1x__hdr.html b/libnet/doc/html/structlibnet__802__1x__hdr.html deleted file mode 100644 index bb5dca6..0000000 --- a/libnet/doc/html/structlibnet__802__1x__hdr.html +++ /dev/null @@ -1,97 +0,0 @@ - - -libnet: libnet_802_1x_hdr struct Reference - - - - -

libnet_802_1x_hdr Struct Reference

#include <libnet-headers.h> -

- - - - - - - - - -

Data Fields

u_int8_t dot1x_version
u_int8_t dot1x_type
u_int16_t dot1x_length
-


Detailed Description

-IEEE 802.1X EAP (Extensible Authentication Protocol) header, static header size: 4 bytes -

-


Field Documentation

-

- - - - -
- - -
u_int16_t libnet_802_1x_hdr::dot1x_length -
-
- - - - - -
-   - - -

-total frame length

-

- - - - -
- - -
u_int8_t libnet_802_1x_hdr::dot1x_type -
-
- - - - - -
-   - - -

-frame type

-

- - - - -
- - -
u_int8_t libnet_802_1x_hdr::dot1x_version -
-
- - - - - -
-   - - -

-protocol version

-


The documentation for this struct was generated from the following file: -
Generated on Wed Mar 10 13:23:38 2004 for libnet by - -doxygen -1.3.4
- - diff --git a/libnet/doc/libnet.doxygen.conf b/libnet/doc/libnet.doxygen.conf deleted file mode 100644 index 327aa25..0000000 --- a/libnet/doc/libnet.doxygen.conf +++ /dev/null @@ -1,1102 +0,0 @@ -# Doxyfile 1.3.2 -# $Id: libnet.doxygen.conf,v 1.2 2003/07/12 00:39:54 route Exp $ - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project -# -# All text after a hash (#) is considered a comment and will be ignored -# The format is: -# TAG = value [value, ...] -# For lists items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" ") - -#--------------------------------------------------------------------------- -# General configuration options -#--------------------------------------------------------------------------- - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded -# by quotes) that should identify the project. - -PROJECT_NAME = "libnet" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or -# if some version control system is used. - -PROJECT_NUMBER = "1.1.1" - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location -# where doxygen was started. If left blank the current directory will be used. - -OUTPUT_DIRECTORY = "doc" - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, -# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en -# (Japanese with English messages), Korean, Norwegian, Polish, Portuguese, -# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. - -OUTPUT_LANGUAGE = English - -# This tag can be used to specify the encoding used in the generated output. -# The encoding is not always determined by the language that is chosen, -# but also whether or not the output is meant for Windows or non-Windows users. -# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES -# forces the Windows encoding (this is the default for the Windows binary), -# whereas setting the tag to NO uses a Unix-style encoding (the default for -# all platforms other than Windows). - -USE_WINDOWS_ENCODING = NO - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES - -EXTRACT_ALL = NO - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = NO - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. -# If set to NO only classes defined in header files are included. - -EXTRACT_LOCAL_CLASSES = YES - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. -# This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the -# function's detailed documentation block. - -HIDE_IN_BODY_DOCS = NO - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). -# Set to NO to disable this. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. - -REPEAT_BRIEF = YES - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief -# description. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited -# members of a class in the documentation of that class as if those members were -# ordinary class members. Constructors, destructors and assignment operators of -# the base classes will not be shown. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set -# to NO the shortest path that makes the file name unique will be used. - -FULL_PATH_NAMES = NO - -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. It is allowed to use relative paths in the argument list. - -STRIP_FROM_PATH = - -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# users are advised to set this option to NO. - -CASE_SENSE_NAMES = YES - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful is your file systems -# doesn't support long names like on DOS, Mac, or CD-ROM. - -SHORT_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like the Qt-style comments (thus requiring an -# explict @brief command for a brief description. - -JAVADOC_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed -# description. Set this tag to YES if you prefer the old behaviour instead. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the DETAILS_AT_TOP tag is set to YES then Doxygen -# will output the detailed description near the top, like JavaDoc. -# If set to NO, the detailed description appears after the member -# documentation. - -DETAILS_AT_TOP = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# reimplements. - -INHERIT_DOCS = YES - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in -# declaration order. - -SORT_MEMBER_DOCS = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. - -DISTRIBUTE_GROUP_DOC = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. -# Doxygen uses this value to replace tabs by spaces in code fragments. - -TAB_SIZE = 4 - -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo -# commands in the documentation. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test -# commands in the documentation. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug -# commands in the documentation. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting -# \deprecated commands in the documentation. - -GENERATE_DEPRECATEDLIST= YES - -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". -# You can put \n's in the value part of an alias to insert newlines. - -ALIASES = - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or define consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and defines in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -MAX_INITIALIZER_LINES = 30 - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list -# of all members will be omitted, etc. - -OPTIMIZE_OUTPUT_FOR_C = YES - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources -# only. Doxygen will then generate output that is more tailored for Java. -# For instance, namespaces will be presented as packages, qualified scopes -# will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the -# list will mention the files that were used to generate the documentation. - -SHOW_USED_FILES = YES - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will -# automatically be disabled. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that -# don't exist or using markup commands wrongly. - -WARN_IF_DOC_ERROR = YES - -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written -# to stderr. - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories -# with spaces. - -INPUT = - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp -# *.h++ *.idl *.odl *.cs - -FILE_PATTERNS = - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories -# that are symbolic links (a Unix filesystem feature) are excluded from the input. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. - -EXCLUDE_PATTERNS = */sample/* - -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see -# the \include command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank all files are included. - -EXAMPLE_PATTERNS = - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see -# the \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command , where -# is the value of the INPUT_FILTER tag, and is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. - -INPUT_FILTER = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -FILTER_SOURCE_FILES = NO - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C and C++ comments will always remain visible. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES (the default) -# then for each documented function all documented -# functions referencing it will be listed. - -REFERENCED_BY_RELATION = YES - -# If the REFERENCES_RELATION tag is set to YES (the default) -# then for each documented function all documented entities -# called/used by that function will be listed. - -REFERENCES_RELATION = YES - -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for -# which an include is specified. Set to NO to disable this. - -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project -# contains a lot of classes, structs, unions or interfaces. - -ALPHABETICAL_INDEX = NO - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `html' will be used as the default path. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet - -HTML_STYLESHEET = - -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to -# NO a bullet list will be used. - -HTML_ALIGN_MEMBERS = YES - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be -# written to the html output dir. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run -# the HTML help compiler on the generated index.hhp. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that -# it should be included in the master .chm file (NO). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a -# normal table of contents (NO) in the .chm file. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -TOC_EXPAND = NO - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at -# top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. - -DISABLE_INDEX = NO - -# This tag can be used to set the number of enum values (range [1..20]) -# that doxygen will group on one line in the generated HTML documentation. - -ENUM_VALUES_PER_LINE = 4 - -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be -# generated containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are -# probably better off using the HTML help feature. - -GENERATE_TREEVIEW = NO - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree -# is shown. - -TREEVIEW_WIDTH = 250 - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = NO - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = NO - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, a4wide, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = a4wide - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = NO - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = NO - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimised for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load stylesheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assigments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = YES - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. This is useful -# if you want to understand what is going on. On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = NO - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_PREDEFINED tags. - -EXPAND_ONLY_PREDEF = NO - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# in the INCLUDE_PATH (see below) will be search if a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. - -PREDEFINED = - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all function-like macros that are alone -# on a line, have an all uppercase name, and do not end with a semicolon. Such -# function macros are typically used for boiler-plate code, and will confuse the -# parser if not removed. - -SKIP_FUNCTION_MACROS = YES - -#--------------------------------------------------------------------------- -# Configuration::addtions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool -# does not have to be run to correct the links. -# Note that each tag file must have a unique name -# (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen -# is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = YES - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or -# super classes. Setting the tag to NO turns the diagrams off. Note that this -# option is superceded by the HAVE_DOT option below. This is only a fallback. It is -# recommended to install and use dot, since it yields more powerful graphs. - -CLASS_DIAGRAMS = YES - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = NO - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# the CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# colloborations diagrams in a style similiar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will -# generate a call dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable call graphs for selected -# functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are png, jpg, or gif -# If left blank png will be used. - -DOT_IMAGE_FORMAT = png - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found on the path. - -DOT_PATH = - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. - -MAX_DOT_GRAPH_WIDTH = 1024 - -# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. - -MAX_DOT_GRAPH_HEIGHT = 1024 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes that -# lay further from the root node will be omitted. Note that setting this option to -# 1 or 2 may greatly reduce the computation time needed for large code bases. Also -# note that a graph may be further truncated if the graph's image dimensions are -# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). -# If 0 is used for the depth value (the default), the graph is not depth-constrained. - -MAX_DOT_GRAPH_DEPTH = 0 - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Configuration::addtions related to the search engine -#--------------------------------------------------------------------------- - -# The SEARCHENGINE tag specifies whether or not a search engine should be -# used. If set to NO the values of all tags below this one will be ignored. - -SEARCHENGINE = NO - -# The CGI_NAME tag should be the name of the CGI script that -# starts the search engine (doxysearch) with the correct parameters. -# A script with this name will be generated by doxygen. - -CGI_NAME = search.cgi - -# The CGI_URL tag should be the absolute URL to the directory where the -# cgi binaries are located. See the documentation of your http daemon for -# details. - -CGI_URL = - -# The DOC_URL tag should be the absolute URL to the directory where the -# documentation is located. If left blank the absolute path to the -# documentation, with file:// prepended to it, will be used. - -DOC_URL = - -# The DOC_ABSPATH tag should be the absolute path to the directory where the -# documentation is located. If left blank the directory on the local machine -# will be used. - -DOC_ABSPATH = - -# The BIN_ABSPATH tag must point to the directory where the doxysearch binary -# is installed. - -BIN_ABSPATH = /usr/local/bin/ - -# The EXT_DOC_PATHS tag can be used to specify one or more paths to -# documentation generated for other projects. This allows doxysearch to search -# the documentation for these projects as well. - -EXT_DOC_PATHS = diff --git a/libnet/doc/man/man3/libnet-functions.h.3 b/libnet/doc/man/man3/libnet-functions.h.3 deleted file mode 100644 index 5b821d0..0000000 --- a/libnet/doc/man/man3/libnet-functions.h.3 +++ /dev/null @@ -1,3137 +0,0 @@ -.TH "libnet-functions.h" 3 "10 Mar 2004" "libnet" \" -*- nroff -*- -.ad l -.nh -.SH NAME -libnet-functions.h \- libnet exported function prototypes - -.SH SYNOPSIS -.br -.PP -.SS "Functions" - -.in +1c -.ti -1c -.RI "libnet_t * \fBlibnet_init\fP (int injection_type, char *device, char *err_buf)" -.br -.ti -1c -.RI "void \fBlibnet_destroy\fP (libnet_t *l)" -.br -.ti -1c -.RI "void \fBlibnet_clear_packet\fP (libnet_t *l)" -.br -.ti -1c -.RI "void \fBlibnet_stats\fP (libnet_t *l, struct libnet_stats *ls)" -.br -.ti -1c -.RI "int \fBlibnet_getfd\fP (libnet_t *l)" -.br -.ti -1c -.RI "int8_t * \fBlibnet_getdevice\fP (libnet_t *l)" -.br -.ti -1c -.RI "u_int8_t * \fBlibnet_getpbuf\fP (libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_getpbuf_size\fP (libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "char * \fBlibnet_geterror\fP (libnet_t *l)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_getpacket_size\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_seed_prand\fP (libnet_t *l)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_get_prand\fP (int mod)" -.br -.ti -1c -.RI "int \fBlibnet_toggle_checksum\fP (libnet_t *l, libnet_ptag_t ptag, int mode)" -.br -.ti -1c -.RI "char * \fBlibnet_addr2name4\fP (u_int32_t in, u_int8_t use_name)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_name2addr4\fP (libnet_t *l, char *host_name, u_int8_t use_name)" -.br -.ti -1c -.RI "libnet_in6_addr \fBlibnet_name2addr6\fP (libnet_t *l, char *host_name, u_int8_t use_name)" -.br -.ti -1c -.RI "void \fBlibnet_addr2name6_r\fP (struct libnet_in6_addr addr, u_int8_t use_name, char *host_name, int host_name_len)" -.br -.ti -1c -.RI "int \fBlibnet_plist_chain_new\fP (libnet_t *l, libnet_plist_t **plist, char *token_list)" -.br -.ti -1c -.RI "int \fBlibnet_plist_chain_next_pair\fP (libnet_plist_t *plist, u_int16_t *bport, u_int16_t *eport)" -.br -.ti -1c -.RI "int \fBlibnet_plist_chain_dump\fP (libnet_plist_t *plist)" -.br -.ti -1c -.RI "char * \fBlibnet_plist_chain_dump_string\fP (libnet_plist_t *plist)" -.br -.ti -1c -.RI "int \fBlibnet_plist_chain_free\fP (libnet_plist_t *plist)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_802_1q\fP (u_int8_t *dst, u_int8_t *src, u_int16_t tpi, u_int8_t priority, u_int8_t cfi, u_int16_t vlan_id, u_int16_t len_proto, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_802_1x\fP (u_int8_t eap_ver, u_int8_t eap_type, u_int16_t length, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_802_2\fP (u_int8_t dsap, u_int8_t ssap, u_int8_t control, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_802_2snap\fP (u_int8_t dsap, u_int8_t ssap, u_int8_t control, u_int8_t *oui, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_802_3\fP (u_int8_t *dst, u_int8_t *src, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ethernet\fP (u_int8_t *dst, u_int8_t *src, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_ethernet\fP (u_int8_t *dst, u_int16_t type, libnet_t *l)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_fddi\fP (u_int8_t fc, u_int8_t *dst, u_int8_t *src, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_fddi\fP (u_int8_t fc, u_int8_t *dst, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, libnet_t *l)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_arp\fP (u_int16_t hrd, u_int16_t pro, u_int8_t hln, u_int8_t pln, u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, u_int8_t *tpa, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_arp\fP (u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, u_int8_t *tpa, libnet_t *l)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_tcp\fP (u_int16_t sp, u_int16_t dp, u_int32_t seq, u_int32_t ack, u_int8_t control, u_int16_t win, u_int16_t sum, u_int16_t urg, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_tcp_options\fP (u_int8_t *options, u_int32_t options_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_udp\fP (u_int16_t sp, u_int16_t dp, u_int16_t len, u_int16_t sum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_cdp\fP (u_int8_t version, u_int8_t ttl, u_int16_t sum, u_int16_t type, u_int16_t len, u_int8_t *value, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_icmpv4_echo\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_icmpv4_mask\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, u_int32_t mask, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_icmpv4_unreach\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_icmpv4_redirect\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t gateway, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_icmpv4_timeexceed\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_icmpv4_timestamp\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, n_time otime, n_time rtime, n_time ttime, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_igmp\fP (u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t ip, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv4\fP (u_int16_t len, u_int8_t tos, u_int16_t id, u_int16_t frag, u_int8_t ttl, u_int8_t prot, u_int16_t sum, u_int32_t src, u_int32_t dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv4_options\fP (u_int8_t *options, u_int32_t options_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_ipv4\fP (u_int16_t len, u_int8_t prot, u_int32_t dst, libnet_t *l)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv6\fP (u_int8_t tc, u_int32_t fl, u_int16_t len, u_int8_t nh, u_int8_t hl, struct libnet_in6_addr src, struct libnet_in6_addr dst, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv6_frag\fP (u_int8_t nh, u_int8_t reserved, u_int16_t frag, u_int32_t id, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv6_routing\fP (u_int8_t nh, u_int8_t len, u_int8_t rtype, u_int8_t segments, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv6_destopts\fP (u_int8_t nh, u_int8_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipv6_hbhopts\fP (u_int8_t nh, u_int8_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_ipv6\fP (u_int16_t len, u_int8_t nh, struct libnet_in6_addr dst, libnet_t *l)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_isl\fP (u_int8_t *dhost, u_int8_t type, u_int8_t user, u_int8_t *shost, u_int16_t len, u_int8_t *snap, u_int16_t vid, u_int16_t index, u_int16_t reserved, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipsec_esp_hdr\fP (u_int32_t spi, u_int32_t seq, u_int32_t iv, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipsec_esp_ftr\fP (u_int8_t len, u_int8_t nh, int8_t *auth, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ipsec_ah\fP (u_int8_t nh, u_int8_t len, u_int16_t res, u_int32_t spi, u_int32_t seq, u_int32_t auth, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_dnsv4\fP (u_int16_t h_len, u_int16_t id, u_int16_t flags, u_int16_t num_q, u_int16_t num_anws_rr, u_int16_t num_auth_rr, u_int16_t num_addi_rr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_rip\fP (u_int8_t cmd, u_int8_t version, u_int16_t rd, u_int16_t af, u_int16_t rt, u_int32_t addr, u_int32_t mask, u_int32_t next_hop, u_int32_t metric, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_rpc_call\fP (u_int32_t rm, u_int32_t xid, u_int32_t prog_num, u_int32_t prog_vers, u_int32_t procedure, u_int32_t cflavor, u_int32_t clength, u_int8_t *cdata, u_int32_t vflavor, u_int32_t vlength, u_int8_t *vdata, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_stp_conf\fP (u_int16_t id, u_int8_t version, u_int8_t bpdu_type, u_int8_t flags, u_int8_t *root_id, u_int32_t root_pc, u_int8_t *bridge_id, u_int16_t port_id, u_int16_t message_age, u_int16_t max_age, u_int16_t hello_time, u_int16_t f_delay, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_stp_tcn\fP (u_int16_t id, u_int8_t version, u_int8_t bpdu_type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_token_ring\fP (u_int8_t ac, u_int8_t fc, u_int8_t *dst, u_int8_t *src, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_token_ring\fP (u_int8_t ac, u_int8_t fc, u_int8_t *dst, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, libnet_t *l)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_vrrp\fP (u_int8_t version, u_int8_t type, u_int8_t vrouter_id, u_int8_t priority, u_int8_t ip_count, u_int8_t auth_type, u_int8_t advert_int, u_int16_t sum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_mpls\fP (u_int32_t label, u_int8_t experimental, u_int8_t bos, u_int8_t ttl, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ntp\fP (u_int8_t leap_indicator, u_int8_t version, u_int8_t mode, u_int8_t stratum, u_int8_t poll, u_int8_t precision, u_int16_t delay_int, u_int16_t delay_frac, u_int16_t dispersion_int, u_int16_t dispersion_frac, u_int32_t reference_id, u_int32_t ref_ts_int, u_int32_t ref_ts_frac, u_int32_t orig_ts_int, u_int32_t orig_ts_frac, u_int32_t rec_ts_int, u_int32_t rec_ts_frac, u_int32_t xmt_ts_int, u_int32_t xmt_ts_frac, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2\fP (u_int16_t len, u_int8_t type, u_int32_t rtr_id, u_int32_t area_id, u_int16_t sum, u_int16_t autype, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_hello\fP (u_int32_t netmask, u_int16_t interval, u_int8_t opts, u_int8_t priority, u_int dead_int, u_int32_t des_rtr, u_int32_t bkup_rtr, u_int32_t neighbor, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_dbd\fP (u_int16_t dgram_len, u_int8_t opts, u_int8_t type, u_int seqnum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsr\fP (u_int type, u_int lsid, u_int32_t advrtr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsu\fP (u_int num, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsa\fP (u_int16_t age, u_int8_t opts, u_int8_t type, u_int lsid, u_int32_t advrtr, u_int seqnum, u_int16_t sum, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsa_rtr\fP (u_int16_t flags, u_int16_t num, u_int id, u_int data, u_int8_t type, u_int8_t tos, u_int16_t metric, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsa_net\fP (u_int32_t nmask, u_int rtrid, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsa_sum\fP (u_int32_t nmask, u_int metric, u_int tos, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_ospfv2_lsa_as\fP (u_int32_t nmask, u_int metric, u_int32_t fwdaddr, u_int tag, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_data\fP (u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_dhcpv4\fP (u_int8_t opcode, u_int8_t htype, u_int8_t hlen, u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t *chaddr, u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_bootpv4\fP (u_int8_t opcode, u_int8_t htype, u_int8_t hlen, u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t *chaddr, u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_getgre_length\fP (u_int16_t fv)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_gre\fP (u_int16_t fv, u_int16_t type, u_int16_t sum, u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_egre\fP (u_int16_t fv, u_int16_t type, u_int16_t sum, u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_gre_sre\fP (u_int16_t af, u_int8_t offset, u_int8_t length, u_int8_t *routing, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_gre_last_sre\fP (libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_bgp4_header\fP (u_int8_t marker[LIBNET_BGP4_MARKER_SIZE], u_int16_t len, u_int8_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_bgp4_open\fP (u_int8_t version, u_int16_t src_as, u_int16_t hold_time, u_int32_t bgp_id, u_int8_t opt_len, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_bgp4_update\fP (u_int16_t unfeasible_rt_len, u_int8_t *withdrawn_rt, u_int16_t total_path_attr_len, u_int8_t *path_attributes, u_int16_t info_len, u_int8_t *reachability_info, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_bgp4_notification\fP (u_int8_t err_code, u_int8_t err_subcode, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_sebek\fP (u_int32_t magic, u_int16_t version, u_int16_t type, u_int32_t counter, u_int32_t time_sec, u_int32_t time_usec, u_int32_t pid, u_int32_t uid, u_int32_t fd, u_int8_t cmd[SEBEK_CMD_LENGTH], u_int32_t length, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_build_link\fP (u_int8_t *dst, u_int8_t *src, u_int8_t *oui, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_autobuild_link\fP (u_int8_t *dst, u_int8_t *oui, u_int16_t type, libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_write\fP (libnet_t *l)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_get_ipaddr4\fP (libnet_t *l)" -.br -.ti -1c -.RI "libnet_in6_addr \fBlibnet_get_ipaddr6\fP (libnet_t *l)" -.br -.ti -1c -.RI "libnet_ether_addr * \fBlibnet_get_hwaddr\fP (libnet_t *l)" -.br -.ti -1c -.RI "u_int8_t * \fBlibnet_hex_aton\fP (int8_t *s, int *len)" -.br -.ti -1c -.RI "int \fBlibnet_adv_cull_packet\fP (libnet_t *l, u_int8_t **packet, u_int32_t *packet_s)" -.br -.ti -1c -.RI "int \fBlibnet_adv_cull_header\fP (libnet_t *l, libnet_ptag_t ptag, u_int8_t **header, u_int32_t *header_s)" -.br -.ti -1c -.RI "int \fBlibnet_adv_write_link\fP (libnet_t *l, u_int8_t *packet, u_int32_t packet_s)" -.br -.ti -1c -.RI "void \fBlibnet_adv_free_packet\fP (libnet_t *l, u_int8_t *packet)" -.br -.ti -1c -.RI "int \fBlibnet_cq_add\fP (libnet_t *l, char *label)" -.br -.ti -1c -.RI "libnet_t * \fBlibnet_cq_remove\fP (libnet_t *l)" -.br -.ti -1c -.RI "libnet_t * \fBlibnet_cq_remove_by_label\fP (char *label)" -.br -.ti -1c -.RI "int8_t * \fBlibnet_cq_getlabel\fP (libnet_t *l)" -.br -.ti -1c -.RI "libnet_t * \fBlibnet_cq_find_by_label\fP (char *label)" -.br -.ti -1c -.RI "void \fBlibnet_cq_destroy\fP ()" -.br -.ti -1c -.RI "libnet_t * \fBlibnet_cq_head\fP ()" -.br -.ti -1c -.RI "int \fBlibnet_cq_last\fP ()" -.br -.ti -1c -.RI "libnet_t * \fBlibnet_cq_next\fP ()" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_cq_size\fP ()" -.br -.ti -1c -.RI "void \fBlibnet_diag_dump_context\fP (libnet_t *l)" -.br -.ti -1c -.RI "void \fBlibnet_diag_dump_pblock\fP (libnet_t *l)" -.br -.ti -1c -.RI "char * \fBlibnet_diag_dump_pblock_type\fP (u_int8_t type)" -.br -.ti -1c -.RI "void \fBlibnet_diag_dump_hex\fP (u_int8_t *packet, u_int32_t len, int swap, FILE *stream)" -.br -.ti -1c -.RI "int \fBlibnet_write_raw_ipv4\fP (libnet_t *l, u_int8_t *packet, u_int32_t size)" -.br -.ti -1c -.RI "int \fBlibnet_write_raw_ipv6\fP (libnet_t *l, u_int8_t *packet, u_int32_t size)" -.br -.ti -1c -.RI "int \fBlibnet_write_link\fP (libnet_t *l, u_int8_t *packet, u_int32_t size)" -.br -.ti -1c -.RI "int \fBlibnet_open_raw4\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_close_raw4\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_open_raw6\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_close_raw6\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_select_device\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_open_link\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_close_link\fP (libnet_t *l)" -.br -.ti -1c -.RI "int \fBlibnet_do_checksum\fP (libnet_t *l, u_int8_t *packet, int protocol, int len)" -.br -.ti -1c -.RI "u_int32_t \fBlibnet_compute_crc\fP (u_int8_t *buf, u_int32_t len)" -.br -.ti -1c -.RI "u_int16_t \fBlibnet_ip_check\fP (u_int16_t *addr, int len)" -.br -.ti -1c -.RI "int \fBlibnet_in_cksum\fP (u_int16_t *addr, int len)" -.br -.ti -1c -.RI "libnet_pblock_t * \fBlibnet_pblock_probe\fP (libnet_t *l, libnet_ptag_t ptag, u_int32_t n, u_int8_t type)" -.br -.ti -1c -.RI "libnet_pblock_t * \fBlibnet_pblock_new\fP (libnet_t *l, u_int32_t size)" -.br -.ti -1c -.RI "int \fBlibnet_pblock_swap\fP (libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2)" -.br -.ti -1c -.RI "int \fBlibnet_pblock_insert_before\fP (libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2)" -.br -.ti -1c -.RI "void \fBlibnet_pblock_delete\fP (libnet_t *l, libnet_pblock_t *p)" -.br -.ti -1c -.RI "libnet_ptag_t \fBlibnet_pblock_update\fP (libnet_t *l, libnet_pblock_t *p, u_int32_t h, u_int8_t type)" -.br -.ti -1c -.RI "libnet_pblock_t * \fBlibnet_pblock_find\fP (libnet_t *l, libnet_ptag_t ptag)" -.br -.ti -1c -.RI "int \fBlibnet_pblock_append\fP (libnet_t *l, libnet_pblock_t *p, u_int8_t *buf, u_int32_t len)" -.br -.ti -1c -.RI "void \fBlibnet_pblock_setflags\fP (libnet_pblock_t *p, u_int8_t flags)" -.br -.ti -1c -.RI "int \fBlibnet_pblock_p2p\fP (u_int8_t type)" -.br -.ti -1c -.RI "int \fBlibnet_pblock_coalesce\fP (libnet_t *l, u_int8_t **packet, u_int32_t *size)" -.br -.ti -1c -.RI "int \fBlibnet_check_iface\fP (libnet_t *l)" -.br -.in -1c -.SS "Variables" - -.in +1c -.ti -1c -.RI "const struct libnet_in6_addr \fBin6addr_error\fP" -.br -.in -1c -.SH "Detailed Description" -.PP -libnet exported function prototypes - - -.SH "Function Documentation" -.PP -.SS "char* libnet_addr2name4 (u_int32_t in, u_int8_t use_name)" -.PP -Takes a network byte ordered IPv4 address and returns a pointer to either a canonical DNS name (if it has one) or a string of dotted decimals. This may incur a DNS lookup if the hostname and mode is set to LIBNET_RESOLVE. If mode is set to LIBNET_DONT_RESOLVE, no DNS lookup will be performed and the function will return a pointer to a dotted decimal string. The function cannot fail -- if no canonical name exists, it will fall back on returning a dotted decimal string. This function is non-reentrant. -.PP -\fBParameters:\fP -.RS 4 -\fIin\fP network byte ordered IPv4 address -.br -\fIuse_name\fP LIBNET_RESOLVE or LIBNET_DONT_RESOLVE -.RE -.PP -\fBReturns:\fP -.RS 4 -a pointer to presentation format string -.RE -.PP - -.SS "void libnet_addr2name6_r (struct libnet_in6_addr addr, u_int8_t use_name, char * host_name, int host_name_len)" -.PP -Should document this baby right here. -.SS "int libnet_adv_cull_header (libnet_t * l, libnet_ptag_t ptag, u_int8_t ** header, u_int32_t * header_s)" -.PP -[Advanced Interface] Pulls the header from the specified ptag from the given libnet context. This function is part of the advanced interface and is only available when libnet is initialized in advanced mode. If the function fails \fBlibnet_geterror()\fP can tell you why. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIptag\fP the ptag referencing the header to pull -.br -\fIheader\fP will contain the header -.br -\fIheader_s\fP will contain the header size -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "int libnet_adv_cull_packet (libnet_t * l, u_int8_t ** packet, u_int32_t * packet_s)" -.PP -[Advanced Interface] Yanks a prebuilt, wire-ready packet from the given libnet context. If libnet was configured to do so (which it is by default) the packet will have all checksums written in. This function is part of the advanced interface and is only available when libnet is initialized in advanced mode. It is important to note that the function performs an implicit malloc() and a corresponding call to \fBlibnet_adv_free_packet()\fP should be made to free the memory packet occupies. If the function fails \fBlibnet_geterror()\fP can tell you why. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIpacket\fP will contain the wire-ready packet -.br -\fIpacket_s\fP will contain the packet size -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "void libnet_adv_free_packet (libnet_t * l, u_int8_t * packet)" -.PP -[Advanced Interface] Frees the memory allocated when \fBlibnet_adv_cull_packet()\fP is called. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIpacket\fP a pointer to the packet to free -.RE -.PP - -.SS "int libnet_adv_write_link (libnet_t * l, u_int8_t * packet, u_int32_t packet_s)" -.PP -[Advanced Interface] Writes a packet the network at the link layer. This function is useful to write a packet that has been constructed by hand by the application programmer or, more commonly, to write a packet that has been returned by a call to \fBlibnet_adv_cull_packet()\fP. This function is part of the advanced interface and is only available when libnet is initialized in advanced mode. If the function fails \fBlibnet_geterror()\fP can tell you why. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIpacket\fP a pointer to the packet to inject -.br -\fIpacket_s\fP the size of the packet -.RE -.PP -\fBReturns:\fP -.RS 4 -the number of bytes written, or \-1 on failure -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_arp (u_int16_t op, u_int8_t * sha, u_int8_t * spa, u_int8_t * tha, u_int8_t * tpa, libnet_t * l)" -.PP -Autouilds an Address Resolution Protocol (ARP) header. Depending on the op value, the function builds one of several different types of RFC 826 or RFC 903 RARP packets. -.PP -\fBParameters:\fP -.RS 4 -\fIop\fP ARP operation type -.br -\fIsha\fP sender's hardware address -.br -\fIspa\fP sender's protocol address -.br -\fItha\fP target hardware address -.br -\fItpa\fP targer protocol address -.br -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_ethernet (u_int8_t * dst, u_int16_t type, libnet_t * l)" -.PP -Autobuilds an Ethernet header. The RFC 894 Ethernet II header is almost identical to the IEEE 802.3 header, with the exception that the field immediately following the source address holds the layer 3 protocol (as opposed to frame's length). You should only use this function when libnet is initialized with the LIBNET_LINK interface. -.PP -\fBParameters:\fP -.RS 4 -\fIdst\fP destination ethernet address -.br -\fItype\fP upper layer protocol type -.br -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_fddi (u_int8_t fc, u_int8_t * dst, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t * org, u_int16_t type, libnet_t * l)" -.PP -Autobuilds a Fiber Distributed Data Interface (FDDI) header. -.PP -\fBParameters:\fP -.RS 4 -\fIfc\fP class format and priority dst destination fddi address -.br -\fIdsap\fP destination service access point -.br -\fIssap\fP source service access point -.br -\fIcf\fP cf -.br -\fIorg\fP IEEE organizational code -.br -\fItype\fP upper layer protocol -.br -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_ipv4 (u_int16_t len, u_int8_t prot, u_int32_t dst, libnet_t * l)" -.PP -Autobuilds a version 4 Internet Protocol (IP) header. The function is useful * to build an IP header quickly when you do not need a granular level of control. The function takes the same len, prot, and dst arguments as \fBlibnet_build_ipv4()\fP. The function does not accept a ptag argument, but it does return a ptag. In other words, you can use it to build a new IP header but not to modify an existing one. -.PP -\fBParameters:\fP -.RS 4 -\fIlen\fP total length of the IP packet including all subsequent data -.br -\fIprot\fP upper layer protocol -.br -\fIdst\fP destination IPv4 address (little endian) -.br -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_ipv6 (u_int16_t len, u_int8_t nh, struct libnet_in6_addr dst, libnet_t * l)" -.PP -This function is not yet implement and is a NONOP. -.PP -\fBParameters:\fP -.RS 4 -\fIlen\fP length -.br -\fInh\fP next header -.br -\fIdst\fP destination IPv6 address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_link (u_int8_t * dst, u_int8_t * oui, u_int16_t type, libnet_t * l)" -.PP -Automatically builds a link layer header for an initialized l. The function determines the proper link layer header format from how l was initialized. The function current supports Ethernet and Token Ring link layers. -.PP -\fBParameters:\fP -.RS 4 -\fIdst\fP the destination MAC address -.br -\fIoui\fP Organizationally Unique Identifier (unused for Ethernet) -.br -\fItype\fP the upper layer protocol type -.br -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_autobuild_token_ring (u_int8_t ac, u_int8_t fc, u_int8_t * dst, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t * org, u_int16_t type, libnet_t * l)" -.PP -Auto-builds a token ring header. -.PP -\fBParameters:\fP -.RS 4 -\fIac\fP access control -.br -\fIfc\fP frame control -.br -\fIdst\fP destination address -.br -\fIdsap\fP destination service access point -.br -\fIssap\fP source service access point -.br -\fIcf\fP control field -.br -\fIoui\fP Organizationally Unique Identifier -.br -\fItype\fP upper layer protocol type -.br -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_802_1q (u_int8_t * dst, u_int8_t * src, u_int16_t tpi, u_int8_t priority, u_int8_t cfi, u_int16_t vlan_id, u_int16_t len_proto, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.1q VLAN tagging header. Depending on the value of len_proto, the function wraps the 802.1q header inside either an IEEE 802.3 header or an RFC 894 Ethernet II (DIX) header (both resulting in an 18-byte frame). If len is 1500 or less, most receiving protocol stacks parse the frame as an IEEE 802.3 encapsulated frame. If len is one of the Ethernet type values, most protocol stacks parse the frame as an RFC 894 Ethernet II encapsulated frame. Note the length value is calculated without the 802.1q header of 18 bytes. -.PP -\fBParameters:\fP -.RS 4 -\fIdst\fP pointer to a six byte source ethernet address -.br -\fIsrc\fP pointer to a six byte destination ethernet address -.br -\fItpi\fP tag protocol identifier -.br -\fIpriority\fP priority -.br -\fIcfi\fP canonical format indicator -.br -\fIvlan_id\fP vlan identifier -.br -\fIlen_proto\fP length (802.3) protocol (Ethernet II) -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_802_1x (u_int8_t eap_ver, u_int8_t eap_type, u_int16_t length, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.1x extended authentication protocol header. -.PP -\fBParameters:\fP -.RS 4 -\fIeap_ver\fP the EAP version -.br -\fIeap_type\fP the EAP type -.br -\fIlength\fP frame length -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_802_2 (u_int8_t dsap, u_int8_t ssap, u_int8_t control, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.2 LLC header. -.PP -\fBParameters:\fP -.RS 4 -\fIdsap\fP destination service access point -.br -\fIssap\fP source service access point -.br -\fIcontrol\fP control field -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_802_2snap (u_int8_t dsap, u_int8_t ssap, u_int8_t control, u_int8_t * oui, u_int16_t type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.2 LLC SNAP header. -.PP -\fBParameters:\fP -.RS 4 -\fIdsap\fP destination service access point -.br -\fIssap\fP source service access point -.br -\fIcontrol\fP control field -.br -\fIoui\fP Organizationally Unique Identifier -.br -\fItype\fP upper layer protocol -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_802_3 (u_int8_t * dst, u_int8_t * src, u_int16_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.3 header. The 802.3 header is almost identical to the RFC 894 Ethernet II header, the exception being that the field immediately following the source address holds the frame's length (as opposed to the layer 3 protocol). You should only use this function when libnet is initialized with the LIBNET_LINK interface. -.PP -\fBParameters:\fP -.RS 4 -\fIdst\fP destination ethernet address -.br -\fIsrc\fP source ethernet address -.br -\fIlen\fP frame length sans header -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_arp (u_int16_t hrd, u_int16_t pro, u_int8_t hln, u_int8_t pln, u_int16_t op, u_int8_t * sha, u_int8_t * spa, u_int8_t * tha, u_int8_t * tpa, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an Address Resolution Protocol (ARP) header. Depending on the op value, the function builds one of several different types of RFC 826 or RFC 903 RARP packets. -.PP -\fBParameters:\fP -.RS 4 -\fIhrd\fP hardware address format -.br -\fIpro\fP protocol address format -.br -\fIhln\fP hardware address length -.br -\fIpln\fP protocol address length -.br -\fIop\fP ARP operation type -.br -\fIsha\fP sender's hardware address -.br -\fIspa\fP sender's protocol address -.br -\fItha\fP target hardware address -.br -\fItpa\fP targer protocol address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_bgp4_header (u_int8_t marker[LIBNET_BGP4_MARKER_SIZE], u_int16_t len, u_int8_t type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) header. The primary function of a BGP speaking system is to exchange network reachability -information with other BGP systems. This network reachability information includes information on the list of Autonomous Systems (ASs) that reachability information traverses. This information is sufficient to construct a graph of AS connectivity from which routing loops may be pruned and some policy decisions at the AS level may be enforced. This function builds the base BGP header which is used as a preamble before any other BGP header. For example, a BGP KEEPALIVE message may be built with only this function, while an error notification requires a subsequent call to libnet_build_bgp4_notification. -.PP -\fBParameters:\fP -.RS 4 -\fImarker\fP a value the receiver can predict (if the message type is not BGP OPEN, or no authentication is used, these 16 bytes are normally set as all ones) -.br -\fIlen\fP total length of the BGP message, including the header -.br -\fItype\fP type code of the message (OPEN, UPDATE, NOTIFICATION or KEEPALIVE) -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_bgp4_notification (u_int8_t err_code, u_int8_t err_subcode, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) notification header. A NOTIFICATION message is sent when an error condition is detected. Specific error information may be passed through the payload interface. -.PP -\fBParameters:\fP -.RS 4 -\fIerr_code\fP type of notification -.br -\fIerr_subcode\fP more specific information about the reported error. -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_bgp4_open (u_int8_t version, u_int16_t src_as, u_int16_t hold_time, u_int32_t bgp_id, u_int8_t opt_len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) OPEN header. This is the first message sent by each side of a BGP connection. The optional parameters options should be constructed using the payload interface (see RFC 1771 for the options structures). -.PP -\fBParameters:\fP -.RS 4 -\fIversion\fP protocol version (should be set to 4) -.br -\fIsrc_as\fP Autonomous System of the sender -.br -\fIhold_time\fP used to compute the maximum allowed time between the receipt of KEEPALIVE, and/or UPDATE messages by the sender -.br -\fIbgp_id\fP BGP identifier of the sender -.br -\fIopt_len\fP total length of the optional parameters field in bytes -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_bgp4_update (u_int16_t unfeasible_rt_len, u_int8_t * withdrawn_rt, u_int16_t total_path_attr_len, u_int8_t * path_attributes, u_int16_t info_len, u_int8_t * reachability_info, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 1771 Border Gateway Protocol 4 (BGP-4) update header. Update messages are used to transfer routing information between BGP peers. -.PP -\fBParameters:\fP -.RS 4 -\fIunfeasible_rt_len\fP indicates the length of the (next) 'withdrawn routes' field in bytes -.br -\fIwithdrawn_rt\fP list of IP addresses prefixes for the routes that are being withdrawn; each IP address prefix is built as a 2-tuple -.br -\fItotal_path_attr_len\fP indicates the length of the (next) 'path attributes' field in bytes -.br -\fIpath_attributes\fP each attribute is a 3-tuple -.br -\fIinfo_len\fP indicates the length of the (next) 'network layer reachability information' field in bytes (needed for internal memory size calculation) -.br -\fIreachability_info\fP 2-tuples . -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_bootpv4 (u_int8_t opcode, u_int8_t htype, u_int8_t hlen, u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t * chaddr, u_int8_t * sname, u_int8_t * file, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_cdp (u_int8_t version, u_int8_t ttl, u_int16_t sum, u_int16_t type, u_int16_t len, u_int8_t * value, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a Cisco Discovery Protocol (CDP) header. Cisco Systems designed CDP to aid in the network management of adjacent Cisco devices. The CDP protocol specifies data by using a type/length/value (TLV) setup. The first TLV can specified by using the functions type, length, and value arguments. To specify additional TLVs, the programmer could either use the payload interface or \fBlibnet_build_data()\fP to construct them. -.PP -\fBParameters:\fP -.RS 4 -\fIversion\fP CDP version -.br -\fIttl\fP time to live (time information should be cached by recipient) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fItype\fP type of data contained in value -.br -\fIlen\fP length of value arugment -.br -\fIvalue\fP the CDP information string -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_data (u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a generic libnet protocol header. This is useful for including an optional payload to a packet that might need to change repeatedly inside of a loop. -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_dhcpv4 (u_int8_t opcode, u_int8_t htype, u_int8_t hlen, u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t * chaddr, u_int8_t * sname, u_int8_t * file, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_dnsv4 (u_int16_t h_len, u_int16_t id, u_int16_t flags, u_int16_t num_q, u_int16_t num_anws_rr, u_int16_t num_auth_rr, u_int16_t num_addi_rr, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 1035 version 4 DNS header. Additional DNS payload information should be specified using the payload interface. -.PP -\fBParameters:\fP -.RS 4 -\fIid\fP DNS packet id -.br -\fIflags\fP control flags -.br -\fInum_q\fP number of questions -.br -\fInum_anws_rr\fP number of answer resource records -.br -\fInum_auth_rr\fP number of authority resource records -.br -\fInum_addi_rr\fP number of additional resource records -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_egre (u_int16_t fv, u_int16_t type, u_int16_t sum, u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Generic Routing Encapsulation (GRE \- RFC 1701) is used to encapsulate any protocol. Hence, the IP part of the packet is usually referred as 'delivery header'. It is then followed by the GRE header and finally the encapsulated packet (IP or whatever). As GRE is very modular, the first GRE header describes the structure of the header, using bits and flag to specify which fields will be present in the header. -.PP -\fBParameters:\fP -.RS 4 -\fIfv\fP the 16 0 to 7: which fields are included in the header (checksum, seq. number, key, ...), bits 8 to 12: flag, bits 13 to 15: version. -.br -\fIpayload\fP optional payload or NULL -.br -\fItype\fP which protocol is encapsulated (PPP, IP, ...) -.br -\fIsum\fP checksum (0 for libnet to autofill). -.br -\fIoffset\fP byte offset from the start of the routing field to the first byte of the SRE -.br -\fIkey\fP inserted by the encapsulator to authenticate the source -.br -\fIseq\fP sequence number used by the receiver to sort the packets -.br -\fIlen\fP size of the GRE packet -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ethernet (u_int8_t * dst, u_int8_t * src, u_int16_t type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an Ethernet header. The RFC 894 Ethernet II header is almost identical to the IEEE 802.3 header, with the exception that the field immediately following the source address holds the layer 3 protocol (as opposed to frame's length). You should only use this function when libnet is initialized with the LIBNET_LINK interface. -.PP -\fBParameters:\fP -.RS 4 -\fIdst\fP destination ethernet address -.br -\fIsrc\fP source ethernet address -.br -\fItype\fP upper layer protocol type -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_fddi (u_int8_t fc, u_int8_t * dst, u_int8_t * src, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t * org, u_int16_t type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a Fiber Distributed Data Interface (FDDI) header. -.PP -\fBParameters:\fP -.RS 4 -\fIfc\fP class format and priority dst destination fddi address src source fddi address -.br -\fIdsap\fP destination service access point -.br -\fIssap\fP source service access point -.br -\fIcf\fP cf -.br -\fIorg\fP 3 byte IEEE organizational code -.br -\fItype\fP upper layer protocol -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_gre (u_int16_t fv, u_int16_t type, u_int16_t sum, u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Generic Routing Encapsulation (GRE \- RFC 1701) is used to encapsulate any protocol. Hence, the IP part of the packet is usually referred as 'delivery header'. It is then followed by the GRE header and finally the encapsulated packet (IP or whatever). As GRE is very modular, the first GRE header describes the structure of the header, using bits and flag to specify which fields will be present in the header. -.PP -\fBParameters:\fP -.RS 4 -\fIfv\fP the 16 0 to 7: which fields are included in the header (checksum, seq. number, key, ...), bits 8 to 12: flag, bits 13 to 15: version. -.br -\fIpayload\fP optional payload or NULL -.br -\fItype\fP which protocol is encapsulated (PPP, IP, ...) -.br -\fIsum\fP checksum (0 for libnet to autofill). -.br -\fIoffset\fP byte offset from the start of the routing field to the first byte of the SRE -.br -\fIkey\fP inserted by the encapsulator to authenticate the source -.br -\fIseq\fP sequence number used by the receiver to sort the packets -.br -\fIlen\fP size of the GRE packet -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_gre_last_sre (libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_gre_sre (u_int16_t af, u_int8_t offset, u_int8_t length, u_int8_t * routing, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_icmpv4_echo (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) echo request/reply header -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP type of ICMP packet (should be ICMP_ECHOREPLY or ICMP_ECHO) -.br -\fIcode\fP code of ICMP packet (should be 0) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIid\fP identification number -.br -\fIseq\fP packet sequence number -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_icmpv4_mask (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, u_int32_t mask, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) IP netmask request/reply header. -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP type of ICMP packet (should be ICMP_MASKREQ or ICMP_MASKREPLY) -.br -\fIcode\fP code of ICMP packet (should be 0) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIid\fP identification number -.br -\fIseq\fP packet sequence number -.br -\fImask\fP subnet mask -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_icmpv4_redirect (u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t gateway, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IP version 4 RFC 792 Internet Message Control Protocol (ICMP) redirect header. The additional arguments enable the application programmer to easily specify the original IP header values (the IP header of the packet that supposedly caused the ICMP redirect message in the first place). -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP type of ICMP packet (should be ICMP_REDIRECT) -.br -\fIcode\fP code of ICMP packet (should be one of the four redirect codes) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIorig_id\fP original IP header identification -.br -\fIorig_frag\fP original IP header fragmentation information -.br -\fIorig_ttl\fP orginal IP header time to live -.br -\fIorig_prot\fP original IP header protocol -.br -\fIorig_check\fP original IP header checksum -.br -\fIorig_src\fP original IP header source address -.br -\fIorig_dst\fP original IP header destination address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_icmpv4_timeexceed (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) time exceeded header. The additional arguments enable the application programmer to easily specify the original IPv4 header values (the IP header of the packet that supposedly caused the ICMP time exceeded message in the first place). -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP type of ICMP packet (should be ICMP_TIMXCEED) -.br -\fIcode\fP code of ICMP packet (ICMP_TIMXCEED_INTRANS / ICMP_TIMXCEED_REASS) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIorig_id\fP original IP header identification -.br -\fIorig_frag\fP original IP header fragmentation information -.br -\fIorig_ttl\fP orginal IP header time to live -.br -\fIorig_prot\fP original IP header protocol -.br -\fIorig_check\fP original IP header checksum -.br -\fIorig_src\fP original IP header source address -.br -\fIorig_dst\fP original IP header destination address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_icmpv4_timestamp (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t id, u_int16_t seq, n_time otime, n_time rtime, n_time ttime, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) timestamp request/reply header. -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP type of ICMP packet (should be ICMP_TSTAMP or ICMP_TSTAMPREPLY) -.br -\fIcode\fP code of ICMP packet (should be 0) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIid\fP identification number -.br -\fIseq\fP sequence number -.br -\fIotime\fP originate timestamp -.br -\fIrtime\fP receive timestamp -.br -\fIttime\fP transmit timestamp -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_icmpv4_unreach (u_int8_t type, u_int8_t code, u_int16_t sum, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IP version 4 RFC 792 Internet Control Message Protocol (ICMP) unreachable header. The additional arguments enable the application programmer to easily specify the original IPv4 header values (the IP header of the packet that supposedly caused the ICMP unreachable message in the first place). -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP type of ICMP packet (should be ICMP_UNREACH) -.br -\fIcode\fP code of ICMP packet (should be one of the 16 unreachable codes) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIorig_id\fP original IP header identification -.br -\fIorig_frag\fP original IP header fragmentation information -.br -\fIorig_ttl\fP orginal IP header time to live -.br -\fIorig_prot\fP original IP header protocol -.br -\fIorig_check\fP original IP header checksum -.br -\fIorig_src\fP original IP header source address -.br -\fIorig_dst\fP original IP header destination address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_igmp (u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t ip, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 1112 Internet Group Memebership Protocol (IGMP) header. -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP packet type -.br -\fIcode\fP packet code (should be 0) -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIip\fP IPv4 address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipsec_ah (u_int8_t nh, u_int8_t len, u_int16_t res, u_int32_t spi, u_int32_t seq, u_int32_t auth, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an Internet Protocol Security Authentication header. -.PP -\fBParameters:\fP -.RS 4 -\fInh\fP next header -.br -\fIlen\fP payload length -.br -\fIres\fP reserved -.br -\fIspi\fP security parameter index -.br -\fIseq\fP sequence number -.br -\fIauth\fP authentication data -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipsec_esp_ftr (u_int8_t len, u_int8_t nh, int8_t * auth, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an Internet Protocol Security Encapsulating Security Payload footer. -.PP -\fBParameters:\fP -.RS 4 -\fIlen\fP padding length -.br -\fInh\fP next header -.br -\fIauth\fP authentication data -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipsec_esp_hdr (u_int32_t spi, u_int32_t seq, u_int32_t iv, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an Internet Protocol Security Encapsulating Security Payload header. -.PP -\fBParameters:\fP -.RS 4 -\fIspi\fP security parameter index -.br -\fIseq\fP ESP sequence number -.br -\fIiv\fP initialization vector -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv4 (u_int16_t len, u_int8_t tos, u_int16_t id, u_int16_t frag, u_int8_t ttl, u_int8_t prot, u_int16_t sum, u_int32_t src, u_int32_t dst, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a version 4 RFC 791 Internet Protocol (IP) header. -.PP -\fBParameters:\fP -.RS 4 -\fIlen\fP total length of the IP packet including all subsequent data -.br -\fItos\fP type of service bits -.br -\fIid\fP IP identification number -.br -\fIfrag\fP fragmentation bits and offset -.br -\fIttl\fP time to live in the network -.br -\fIprot\fP upper layer protocol -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIsrc\fP source IPv4 address (little endian) -.br -\fIdst\fP destination IPv4 address (little endian) -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv4_options (u_int8_t * options, u_int32_t options_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an version 4 Internet Protocol (IP) options header. The function expects options to be a valid IP options string of size options_s, no larger than 40 bytes (the maximum size of an options string). The function checks to make sure that the preceding header is an IPv4 header and that the options string would not result in a packet larger than 65,535 bytes (IPMAXPACKET). The function counts up the number of 32-bit words in the options string and adjusts the IP header length value as necessary. -.PP -\fBParameters:\fP -.RS 4 -\fIoptions\fP byte string of IP options -.br -\fIoptions_s\fP length of options string -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv6 (u_int8_t tc, u_int32_t fl, u_int16_t len, u_int8_t nh, u_int8_t hl, struct libnet_in6_addr src, struct libnet_in6_addr dst, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a version 6 RFC 2460 Internet Protocol (IP) header. -.PP -\fBParameters:\fP -.RS 4 -\fItc\fP traffic class -.br -\fIfl\fP flow label -.br -\fIlen\fP total length of the IP packet -.br -\fInh\fP next header -.br -\fIhl\fP hop limit -.br -\fIsrc\fP source IPv6 address -.br -\fIdst\fP destination IPv6 address -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv6_destopts (u_int8_t nh, u_int8_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a version 6 RFC 2460 Internet Protocol (IP) destination options header. This function is special in that it uses the payload interface to include the options data. The application programmer will build an IPv6 options byte string and pass it to the function using the payload interface. -.PP -\fBParameters:\fP -.RS 4 -\fInh\fP next header -.br -\fIlen\fP length of the header in 8-byte octets not including the first 8 octets -.br -\fIpayload\fP options payload -.br -\fIpayload_s\fP payload length -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv6_frag (u_int8_t nh, u_int8_t reserved, u_int16_t frag, u_int32_t id, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a version 6 RFC 2460 Internet Protocol (IP) fragmentation header. -.PP -\fBParameters:\fP -.RS 4 -\fInh\fP next header -.br -\fIreserved\fP unused value... OR IS IT! -.br -\fIfrag\fP fragmentation bits (ala ipv4) -.br -\fIid\fP packet identification -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv6_hbhopts (u_int8_t nh, u_int8_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a version 6 RFC 2460 Internet Protocol (IP) hop by hop options header. This function is special in that it uses the payload interface to include the options data. The application programmer will build an IPv6 hop by hop options byte string and pass it to the function using the payload interface. -.PP -\fBParameters:\fP -.RS 4 -\fInh\fP next header -.br -\fIlen\fP length of the header in 8-byte octets not including the first 8 octets -.br -\fIpayload\fP options payload -.br -\fIpayload_s\fP payload length -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ipv6_routing (u_int8_t nh, u_int8_t len, u_int8_t rtype, u_int8_t segments, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a version 6 RFC 2460 Internet Protocol (IP) routing header. This function is special in that it uses the payload interface to include the 'type-specific data'; that is the routing information. Most often this will be a number of 128-bit IPv6 addresses. The application programmer will build a byte string of IPv6 address and pass them to the function using the payload interface. -.PP -\fBParameters:\fP -.RS 4 -\fInh\fP next header -.br -\fIlen\fP length of the header in 8-byte octets not including the first 8 octets routing header type -.br -\fIsegments\fP number of routing segments that follow -.br -\fIpayload\fP optional payload of routing information -.br -\fIpayload_s\fP payload length -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_isl (u_int8_t * dhost, u_int8_t type, u_int8_t user, u_int8_t * shost, u_int16_t len, u_int8_t * snap, u_int16_t vid, u_int16_t index, u_int16_t reserved, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a Cisco Inter-Switch Link (ISL) header. -.PP -\fBParameters:\fP -.RS 4 -\fIdhost\fP destination address (should be 01:00:0c:00:00) -.br -\fItype\fP type of frame -.br -\fIuser\fP user defined data -.br -\fIshost\fP source mac address -.br -\fIlen\fP total length of the encapuslated packet less 18 bytes -.br -\fIsnap\fP SNAP information (0xaaaa03 + vendor code) -.br -\fIvid\fP 15 bit VLAN ID, 1 bit BPDU or CDP indicator -.br -\fIindex\fP port index -.br -\fIreserved\fP used for FDDI and token ring -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_link (u_int8_t * dst, u_int8_t * src, u_int8_t * oui, u_int16_t type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a link layer header for an initialized l. The function determines the proper link layer header format from how l was initialized. The function current supports Ethernet and Token Ring link layers. -.PP -\fBParameters:\fP -.RS 4 -\fIdst\fP the destination MAC address -.br -\fIsrc\fP the source MAC address -.br -\fIoui\fP Organizationally Unique Identifier (unused for Ethernet) -.br -\fItype\fP the upper layer protocol type -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_mpls (u_int32_t label, u_int8_t experimental, u_int8_t bos, u_int8_t ttl, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 3032 Multi-Protocol Label Switching (MPLS) header. -.PP -\fBParameters:\fP -.RS 4 -\fIlabel\fP 20-bit label value -.br -\fIexperimental\fP 3-bit reserved field -.br -\fIbos\fP 1-bit bottom of stack identifier -.br -\fIttl\fP time to live -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ntp (u_int8_t leap_indicator, u_int8_t version, u_int8_t mode, u_int8_t stratum, u_int8_t poll, u_int8_t precision, u_int16_t delay_int, u_int16_t delay_frac, u_int16_t dispersion_int, u_int16_t dispersion_frac, u_int32_t reference_id, u_int32_t ref_ts_int, u_int32_t ref_ts_frac, u_int32_t orig_ts_int, u_int32_t orig_ts_frac, u_int32_t rec_ts_int, u_int32_t rec_ts_frac, u_int32_t xmt_ts_int, u_int32_t xmt_ts_frac, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 958 Network Time Protocol (NTP) header. -.PP -\fBParameters:\fP -.RS 4 -\fIleap_indicator\fP the leap indicator -.br -\fIversion\fP NTP protocol version -.br -\fImode\fP NTP mode -.br -\fIstratum\fP stratum -.br -\fIpoll\fP polling interval -.br -\fIprecision\fP precision -.br -\fIdelay_interval\fP delay interval -.br -\fIdelay_frac\fP delay fraction -.br -\fIdispersion_int\fP dispersion interval -.br -\fIdispersion_frac\fP dispersion fraction -.br -\fIreference_id\fP reference id -.br -\fIref_ts_int\fP reference timestamp integer -.br -\fIref_ts_frac\fP reference timestamp fraction -.br -\fIorig_ts_int\fP original timestamp integer -.br -\fIorig_ts_frac\fP original timestamp fraction -.br -\fIrec_ts_int\fP receiver timestamp integer -.br -\fIrec_ts_frac\fP reciever timestamp fraction -.br -\fIxmt_ts_int\fP transmit timestamp integer -.br -\fIxmt_ts_frac\fP transmit timestamp integer -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2 (u_int16_t len, u_int8_t type, u_int32_t rtr_id, u_int32_t area_id, u_int16_t sum, u_int16_t autype, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_dbd (u_int16_t dgram_len, u_int8_t opts, u_int8_t type, u_int seqnum, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_hello (u_int32_t netmask, u_int16_t interval, u_int8_t opts, u_int8_t priority, u_int dead_int, u_int32_t des_rtr, u_int32_t bkup_rtr, u_int32_t neighbor, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsa (u_int16_t age, u_int8_t opts, u_int8_t type, u_int lsid, u_int32_t advrtr, u_int seqnum, u_int16_t sum, u_int16_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsa_as (u_int32_t nmask, u_int metric, u_int32_t fwdaddr, u_int tag, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsa_net (u_int32_t nmask, u_int rtrid, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsa_rtr (u_int16_t flags, u_int16_t num, u_int id, u_int data, u_int8_t type, u_int8_t tos, u_int16_t metric, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsa_sum (u_int32_t nmask, u_int metric, u_int tos, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsr (u_int type, u_int lsid, u_int32_t advrtr, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_ospfv2_lsu (u_int num, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_rip (u_int8_t cmd, u_int8_t version, u_int16_t rd, u_int16_t af, u_int16_t rt, u_int32_t addr, u_int32_t mask, u_int32_t next_hop, u_int32_t metric, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a Routing Information Protocol header (RFCs 1058 and 2453). -.PP -\fBParameters:\fP -.RS 4 -\fIcmd\fP command -.br -\fIversion\fP protocol version -.br -\fIrd\fP version one: 0, version two: routing domain -.br -\fIaf\fP address family -.br -\fIrt\fP version one: 0, version two: route tag -.br -\fIaddr\fP IPv4 address -.br -\fImask\fP version one: 0, version two: subnet mask -.br -\fInext_hop\fP version one: 0, version two: next hop address -.br -\fImetric\fP routing metric -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_rpc_call (u_int32_t rm, u_int32_t xid, u_int32_t prog_num, u_int32_t prog_vers, u_int32_t procedure, u_int32_t cflavor, u_int32_t clength, u_int8_t * cdata, u_int32_t vflavor, u_int32_t vlength, u_int8_t * vdata, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an Remote Procedure Call (Version 2) Call message header as specified in RFC 1831. This builder provides the option for specifying the record marking which is required when used with streaming protocols (TCP). -.PP -\fBParameters:\fP -.RS 4 -\fIrm\fP record marking indicating the position in a stream, 0 otherwise -.br -\fIxid\fP transaction identifier used to link calls and replies -.br -\fIprog_num\fP remote program specification typically between 0 \- 1fffffff -.br -\fIprog_vers\fP remote program version specification -.br -\fIprocedure\fP procedure to be performed by remote program -.br -\fIcflavor\fP authentication credential type -.br -\fIclength\fP credential length (should be 0) -.br -\fIcdata\fP opaque credential data (currently unused) -.br -\fIvflavor\fP authentication verifier type -.br -\fIvlength\fP verifier length (should be 0) -.br -\fIvdata\fP opaque verifier data (currently unused) -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_sebek (u_int32_t magic, u_int16_t version, u_int16_t type, u_int32_t counter, u_int32_t time_sec, u_int32_t time_usec, u_int32_t pid, u_int32_t uid, u_int32_t fd, u_int8_t cmd[SEBEK_CMD_LENGTH], u_int32_t length, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a Sebek header. The Sebek protocol was designed by the Honeynet Project as a transport mechanism for post-intrusion forensic data. More information may be found here: http://www.honeynet.org/papers/sebek.pdf. -.PP -\fBParameters:\fP -.RS 4 -\fImagic\fP identify packets that should be hidden -.br -\fIversion\fP protocol version, currently 1 -.br -\fItype\fP type of record (read data is type 0, write data is type 1) -.br -\fIcounter\fP PDU counter used to identify when packet are lost -.br -\fItime_sec\fP seconds since EPOCH according to the honeypot -.br -\fItime_usec\fP residual microseconds -.br -\fIpid\fP PID -.br -\fIuid\fP UID -.br -\fIfd\fP FD -.br -\fIcmd[SEBEK_CMD_LENGTH]\fP 12 first characters of the command -.br -\fIlength\fP length in bytes of the PDU's body -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_stp_conf (u_int16_t id, u_int8_t version, u_int8_t bpdu_type, u_int8_t flags, u_int8_t * root_id, u_int32_t root_pc, u_int8_t * bridge_id, u_int16_t port_id, u_int16_t message_age, u_int16_t max_age, u_int16_t hello_time, u_int16_t f_delay, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.1d Spanning Tree Protocol (STP) configuration header. STP frames are usually encapsulated inside of an 802.2 + 802.3 frame combination. -.PP -\fBParameters:\fP -.RS 4 -\fIid\fP protocol id -.br -\fIversion\fP protocol version -.br -\fIbpdu_type\fP bridge protocol data unit type -.br -\fIflags\fP flags -.br -\fIroot_id\fP root id -.br -\fIroot_pc\fP root path cost -.br -\fIbridge_id\fP bridge id -.br -\fIport_id\fP port id -.br -\fImessage_age\fP message age -.br -\fImax_age\fP max age -.br -\fIhello_time\fP hello time -.br -\fIf_delay\fP forward delay -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_stp_tcn (u_int16_t id, u_int8_t version, u_int8_t bpdu_type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an IEEE 802.1d Spanning Tree Protocol (STP) topology change notification header. STP frames are usually encapsulated inside of an 802.2 + 802.3 frame combination. -.PP -\fBParameters:\fP -.RS 4 -\fIid\fP protocol id -.br -\fIversion\fP protocol version -.br -\fIbpdu_type\fP bridge protocol data unit type -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_tcp (u_int16_t sp, u_int16_t dp, u_int32_t seq, u_int32_t ack, u_int8_t control, u_int16_t win, u_int16_t sum, u_int16_t urg, u_int16_t len, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 793 Transmission Control Protocol (TCP) header. -.PP -\fBParameters:\fP -.RS 4 -\fIsp\fP source port -.br -\fIdp\fP destination port -.br -\fIseq\fP sequence number -.br -\fIack\fP acknowledgement number -.br -\fIcontrol\fP control flags -.br -\fIwin\fP window size -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIurg\fP urgent pointer len total length of the TCP packet (for checksum calculation) -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_tcp_options (u_int8_t * options, u_int32_t options_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 793 Transmission Control Protocol (TCP) options header. The function expects options to be a valid TCP options string of size options_s, which is no larger than 40 bytes (the maximum size of an options string). The function checks to ensure that the packet consists of a TCP header preceded by an IPv4 header, and that the addition of the options string would not result in a packet larger than 65,535 bytes (IPMAXPACKET). The function counts up the number of 32-bit words in the options string and adjusts the TCP header length value as necessary. -.PP -\fBParameters:\fP -.RS 4 -\fIoptions\fP byte string of TCP options -.br -\fIoptions_s\fP length of options string -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_token_ring (u_int8_t ac, u_int8_t fc, u_int8_t * dst, u_int8_t * src, u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t * org, u_int16_t type, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds a token ring header. -.PP -\fBParameters:\fP -.RS 4 -\fIac\fP access control -.br -\fIfc\fP frame control -.br -\fIdst\fP destination address -.br -\fIsrc\fP source address -.br -\fIdsap\fP destination service access point -.br -\fIssap\fP source service access point -.br -\fIcf\fP control field -.br -\fIoui\fP Organizationally Unique Identifier -.br -\fItype\fP upper layer protocol type -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_udp (u_int16_t sp, u_int16_t dp, u_int16_t len, u_int16_t sum, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 768 User Datagram Protocol (UDP) header. -.PP -\fBParameters:\fP -.RS 4 -\fIsp\fP source port -.br -\fIdp\fP destination port -.br -\fIlen\fP total length of the UDP packet -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "libnet_ptag_t libnet_build_vrrp (u_int8_t version, u_int8_t type, u_int8_t vrouter_id, u_int8_t priority, u_int8_t ip_count, u_int8_t auth_type, u_int8_t advert_int, u_int16_t sum, u_int8_t * payload, u_int32_t payload_s, libnet_t * l, libnet_ptag_t ptag)" -.PP -Builds an RFC 2338 Virtual Router Redundacy Protool (VRRP) header. Use the payload interface to specify address and autthentication information. To build a 'legal' packet, the destination IPv4 address should be the multicast * address 224.0.0.18, the IP TTL should be set to 255, and the IP protocol should be set to 112. -.PP -\fBParameters:\fP -.RS 4 -\fIversion\fP VRRP version (should be 2) -.br -\fItype\fP VRRP packet type (should be 1 \-\- ADVERTISEMENT) -.br -\fIvrouter_id\fP virtual router identification -.br -\fIpriority\fP priority (higher numbers indicate higher priority) -.br -\fIip_count\fP number of IPv4 addresses contained in this advertisement -.br -\fIauth_type\fP type of authentication (0, 1, 2 \-\- see RFC) -.br -\fIadvert_int\fP interval between advertisements -.br -\fIsum\fP checksum (0 for libnet to autofill) -.br -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "void libnet_clear_packet (libnet_t * l)" -.PP -Clears the current packet referenced and frees all pblocks. Should be called when the programmer want to send a completely new packet of a different type using the same context. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP - -.SS "int libnet_cq_add (libnet_t * l, char * label)" -.PP -[Context Queue] Adds a new context to the libnet context queue. If no queue exists, this function will create the queue and add the specified libnet context as the first entry on the list. The functions checks to ensure niether l nor label are NULL, and that label doesn't refer to an existing context already in the queue. Additionally, l should refer to a libnet context previously initialized with a call to \fBlibnet_init()\fP. If the context queue in write locked, this function will fail. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIlabel\fP a canonical name given to recognize the new context, no longer than LIBNET_LABEL_SIZE -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "void libnet_cq_destroy ()" -.PP -[Context Queue] Destroys the entire context queue, calling \fBlibnet_destroy()\fP on each member context. -.SS "libnet_t* libnet_cq_find_by_label (char * label)" -.PP -[Context Queue] Locates a libnet context from the queue, indexed by a canonical label. -.PP -\fBParameters:\fP -.RS 4 -\fIlabel\fP canonical label of the libnet context to retrieve -.RE -.PP -\fBReturns:\fP -.RS 4 -the expected libnet context, NULL on failure -.RE -.PP - -.SS "int8_t* libnet_cq_getlabel (libnet_t * l)" -.PP -[Context Queue] Returns the canonical label associated with the context. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -pointer to the libnet context's label -.RE -.PP - -.SS "libnet_t* libnet_cq_head ()" -.PP -[Context Queue] Intiailizes the interator interface and set a write lock on the entire queue. This function is intended to be called just prior to interating through the entire list of contexts (with the probable intent of inject a series of packets in rapid succession). This function is often used as per the following: -.PP -for (l = \fBlibnet_cq_head()\fP; \fBlibnet_cq_last()\fP; l = \fBlibnet_cq_next()\fP) { ... } -.PP -Much of the time, the application programmer will use the iterator as it is written above; as such, libnet provides a macro to do exactly that, \fBfor_each_context_in_cq(l)\fP. Warning: do not call the iterator more than once in a single loop. -.PP -\fBReturns:\fP -.RS 4 -the head of the context queue -.RE -.PP - -.SS "int libnet_cq_last ()" -.PP -[Context Queue] Check whether the iterator is at the last context in the queue. -.PP -\fBReturns:\fP -.RS 4 -1 if at the end of the context queue, 0 otherwise -.RE -.PP - -.SS "libnet_t* libnet_cq_next ()" -.PP -[Context Queue] Get next context from the context queue. the next context from the context queue -.SS "libnet_t* libnet_cq_remove (libnet_t * l)" -.PP -[Context Queue] Removes a specified context from the libnet context queue by specifying the libnet context pointer. Note the function will remove the specified context from the context queue and cleanup internal memory from the queue, it is up to the application programmer to free the returned libnet context with a call to \fBlibnet_destroy()\fP. Also, as it is not necessary to keep the libnet context pointer when initially adding it to the context queue, most application programmers will prefer to refer to entries on the context queue by canonical name and would use \fBlibnet_cq_remove_by_label()\fP. If the context queue is write locked, this function will fail. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -the pointer to the removed libnet context, NULL on failure -.RE -.PP - -.SS "libnet_t* libnet_cq_remove_by_label (char * label)" -.PP -[Context Queue] Removes a specified context from the libnet context queue by specifying the canonical name. Note the function will remove the specified context from the context queue and cleanup internal memory from the queue, it is up to the application programmer to free the returned libnet context with a call to \fBlibnet_destroy()\fP. If the context queue is write locked, this function will fail. -.PP -\fBParameters:\fP -.RS 4 -\fIlabel\fP canonical name of the context to remove -.RE -.PP -\fBReturns:\fP -.RS 4 -the pointer to the removed libnet context, NULL on failure -.RE -.PP - -.SS "u_int32_t libnet_cq_size ()" -.PP -[Context Queue] Function returns the number of libnet contexts that are in the queue. -.PP -\fBReturns:\fP -.RS 4 -the number of libnet contexts currently in the queue -.RE -.PP - -.SS "void libnet_destroy (libnet_t * l)" -.PP -Shuts down the libnet session referenced by l. It closes the network interface and frees all internal memory structures associated with l. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP - -.SS "void libnet_diag_dump_context (libnet_t * l)" -.PP -[Diagnostic] Prints the contents of the given context. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP - -.SS "void libnet_diag_dump_hex (u_int8_t * packet, u_int32_t len, int swap, FILE * stream)" -.PP -[Diagnostic] Function prints the contents of the supplied buffer to the supplied stream pointer. Will swap endianness based disposition of mode variable. Useful to be used in conjunction with the advanced interface and a culled packet. -.PP -\fBParameters:\fP -.RS 4 -\fIpacket\fP the packet to print -.br -\fIlen\fP length of the packet in bytes -.br -\fIswap\fP 1 to swap byte order, 0 to not -.br -\fIstream\fP a stream pointer to print to -.RE -.PP - -.SS "void libnet_diag_dump_pblock (libnet_t * l)" -.PP -[Diagnostic] Prints the contents of every pblock. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP - -.SS "char* libnet_diag_dump_pblock_type (u_int8_t type)" -.PP -[Diagnostic] Returns the canonical name of the pblock type. -.PP -\fBParameters:\fP -.RS 4 -\fItype\fP pblock type -.RE -.PP -\fBReturns:\fP -.RS 4 -a string representing the pblock type type or 'unknown' for an unknown value -.RE -.PP - -.SS "struct libnet_ether_addr* libnet_get_hwaddr (libnet_t * l)" -.PP -Returns the MAC address for the device libnet was initialized with. If libnet was initialized without a device the function will attempt to find one. If the function fails and returns NULL a call to \fBlibnet_geterror()\fP will tell you why. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -a pointer to the MAC address or NULL -.RE -.PP - -.SS "u_int32_t libnet_get_ipaddr4 (libnet_t * l)" -.PP -Returns the IP address for the device libnet was initialized with. If libnet was initialized without a device (in raw socket mode) the function will attempt to find one. If the function fails and returns \-1 a call to libnet_geterrror() will tell you why. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -a big endian IP address suitable for use in a libnet_build function or \-1 -.RE -.PP - -.SS "struct libnet_in6_addr libnet_get_ipaddr6 (libnet_t * l)" -.PP -This function is not yet implemented under IPv6. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -well, nothing yet -.RE -.PP - -.SS "u_int32_t libnet_get_prand (int mod)" -.PP -Generates an unsigned psuedo-random value within the range specified by mod. LIBNET_PR2 0 \- 1 LIBNET_PR8 0 \- 255 LIBNET_PR16 0 \- 32767 LIBNET_PRu16 0 \- 65535 LIBNET_PR32 0 \- 2147483647 LIBNET_PRu32 0 \- 4294967295 -.PP -\fBParameters:\fP -.RS 4 -\fImod\fP one the of LIBNET_PR* constants -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "int8_t* libnet_getdevice (libnet_t * l)" -.PP -Returns the canonical name of the device used for packet injection. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -the canonical name of the device used for packet injection. Note it can be NULL without being an error. -.RE -.PP - -.SS "char* libnet_geterror (libnet_t * l)" -.PP -Returns the last error set inside of the referenced libnet context. This function should be called anytime a function fails or an error condition is detected inside of libnet. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -an error string or NULL if no error has occured -.RE -.PP - -.SS "int libnet_getfd (libnet_t * l)" -.PP -Returns the FILENO of the file descriptor used for packet injection. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -the file number of the file descriptor used for packet injection -.RE -.PP - -.SS "u_int32_t libnet_getgre_length (u_int16_t fv)\fC [inline]\fP" -.PP -\fBParameters:\fP -.RS 4 -\fIpayload\fP optional payload or NULL -.br -\fIpayload_s\fP payload length or 0 -.br -\fIl\fP pointer to a libnet context -.br -\fIptag\fP protocol tag to modify an existing header, 0 to build a new one -.RE -.PP -\fBReturns:\fP -.RS 4 -protocol tag value on success, \-1 on error -.RE -.PP - -.SS "u_int32_t libnet_getpacket_size (libnet_t * l)" -.PP -Returns the sum of the size of all of the pblocks inside of l (this should be the resuling packet size). -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -the size of the packet in l -.RE -.PP - -.SS "u_int8_t* libnet_getpbuf (libnet_t * l, libnet_ptag_t ptag)" -.PP -Returns the pblock buffer contents for the specified ptag; a subsequent call to \fBlibnet_getpbuf_size()\fP should be made to determine the size of the buffer. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIptag\fP the ptag reference number -.RE -.PP -\fBReturns:\fP -.RS 4 -a pointer to the pblock buffer or NULL on error -.RE -.PP - -.SS "u_int32_t libnet_getpbuf_size (libnet_t * l, libnet_ptag_t ptag)" -.PP -Returns the pblock buffer size for the specified ptag; a previous call to \fBlibnet_getpbuf()\fP should be made to pull the actual buffer contents. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIptag\fP the ptag reference number -.RE -.PP -\fBReturns:\fP -.RS 4 -the size of the pblock buffer -.RE -.PP - -.SS "u_int8_t* libnet_hex_aton (int8_t * s, int * len)" -.PP -Takes a colon separated hexidecimal address (from the command line) and returns a bytestring suitable for use in a libnet_build function. Note this function performs an implicit malloc and the return value should be freed after its use. -.PP -\fBParameters:\fP -.RS 4 -\fIs\fP the string to be parsed -.br -\fIlen\fP the resulting size of the returned byte string -.RE -.PP -\fBReturns:\fP -.RS 4 -a byte string or NULL on failure -.RE -.PP - -.SS "libnet_t* libnet_init (int injection_type, char * device, char * err_buf)" -.PP -Creates the libnet environment. It initializes the library and returns a libnet context. If the injection_type is LIBNET_LINK or LIBNET_LINK_ADV, the function initializes the injection primitives for the link-layer interface enabling the application programmer to build packets starting at the data-link layer (which also provides more granular control over the IP layer). If libnet uses the link-layer and the device argument is non-NULL, the function attempts to use the specified network device for packet injection. This is either a canonical string that references the device (such as 'eth0' for a 100MB Ethernet card on Linux or 'fxp0' for a 100MB Ethernet card on OpenBSD) or the dots and decimals representation of the device's IP address (192.168.0.1). If device is NULL, libnet attempts to find a suitable device to use. If the injection_type is LIBNET_RAW4 or LIBNET_RAW4_ADV, the function initializes the injection primitives for the IPv4 raw socket interface. The final argument, err_buf, should be a buffer of size LIBNET_ERRBUF_SIZE and holds an error message if the function fails. This function requires root privileges to execute successfully. Upon success, the function returns a valid libnet context for use in later function calls; upon failure, the function returns NULL. -.PP -\fBParameters:\fP -.RS 4 -\fIinjection_type\fP packet injection type (LIBNET_LINK, LIBNET_LINK_ADV, LIBNET_RAW4, LIBNET_RAW4_ADV, LIBNET_RAW6, LIBNET_RAW6_ADV) -.br -\fIdevice\fP the interface to use (NULL and libnet will choose one) -.br -\fIerr_buf\fP will contain an error message on failure -.RE -.PP -\fBReturns:\fP -.RS 4 -libnet context ready for use or NULL on error. -.RE -.PP - -.SS "u_int32_t libnet_name2addr4 (libnet_t * l, char * host_name, u_int8_t use_name)" -.PP -Takes a dotted decimal string or a canonical DNS name and returns a network byte ordered IPv4 address. This may incur a DNS lookup if mode is set to LIBNET_RESOLVE and host_name refers to a canonical DNS name. If mode is set to LIBNET_DONT_RESOLVE no DNS lookup will occur. The function can fail if DNS lookup fails or if mode is set to LIBNET_DONT_RESOLVE and host_name refers to a canonical DNS name. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIhost_name\fP pointer to a string containing a presentation format host name -.br -\fIuse_name\fP LIBNET_RESOLVE or LIBNET_DONT_RESOLVE -.RE -.PP -\fBReturns:\fP -.RS 4 -network byte ordered IPv4 address or \-1 (2^32 \- 1) on error -.RE -.PP - -.SS "struct libnet_in6_addr libnet_name2addr6 (libnet_t * l, char * host_name, u_int8_t use_name)" -.PP -Takes a dotted decimal string or a canonical DNS name and returns a network byte ordered IPv6 address. This may incur a DNS lookup if mode is set to LIBNET_RESOLVE and host_name refers to a canonical DNS name. If mode is set to LIBNET_DONT_RESOLVE no DNS lookup will occur. The function can fail if DNS lookup fails or if mode is set to LIBNET_DONT_RESOLVE and host_name refers to a canonical DNS name. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIhost_name\fP pointer to a string containing a presentation format host name -.br -\fIuse_name\fP LIBNET_RESOLVE or LIBNET_DONT_RESOLVE -.RE -.PP -\fBReturns:\fP -.RS 4 -network byte ordered IPv6 address structure -.RE -.PP - -.SS "int libnet_plist_chain_dump (libnet_plist_t * plist)" -.PP -Runs through the port list and prints the contents of the port list chain list to stdout. -.PP -\fBParameters:\fP -.RS 4 -\fIplist\fP previously created portlist -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "char* libnet_plist_chain_dump_string (libnet_plist_t * plist)" -.PP -Runs through the port list and prints the contents of the port list chain list to string. This function uses strdup and is not re-entrant. It also has a memory leak and should not really be used. -.PP -\fBParameters:\fP -.RS 4 -\fIplist\fP previously created portlist -.RE -.PP -\fBReturns:\fP -.RS 4 -a printable string containing the port list contents on success NULL on error -.RE -.PP - -.SS "int libnet_plist_chain_free (libnet_plist_t * plist)" -.PP -Frees all memory associated with port list chain. -.PP -\fBParameters:\fP -.RS 4 -\fIplist\fP previously created portlist -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "int libnet_plist_chain_new (libnet_t * l, libnet_plist_t ** plist, char * token_list)" -.PP -Creates a new port list. Port list chains are useful for TCP and UDP-based applications that need to send packets to a range of ports (contiguous or otherwise). The port list chain, which token_list points to, should contain a series of int8_tacters from the following list: '0123456789,\-' of the general format 'x \- y, z', where 'xyz' are port numbers between 0 and 65,535. plist points to the front of the port list chain list for use in further libnet_plist_chain() functions. Upon success, the function returns 1. Upon failure, the function returns \-1 and \fBlibnet_geterror()\fP can tell you why. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIplist\fP if successful, will refer to the portlist, if not, NULL -.br -\fItoken_list\fP string containing the port list primitive -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "int libnet_plist_chain_next_pair (libnet_plist_t * plist, u_int16_t * bport, u_int16_t * eport)" -.PP -Returns the next port list chain pair from the port list chain plist. bport and eport contain the starting port number and ending port number, respectively. Upon success, the function returns 1 and fills in the port variables; however, if the list is empty, the function returns 0 and sets both port variables to 0. Upon failure, the function returns \-1. -.PP -\fBParameters:\fP -.RS 4 -\fIplist\fP previously created portlist -.br -\fIbport\fP will contain the beginning port number or 0 -.br -\fIeport\fP will contain the ending port number or 0 -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, 0 if empty, \-1 on failure -.RE -.PP - -.SS "int libnet_seed_prand (libnet_t * l)" -.PP -Seeds the psuedo-random number generator. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "void libnet_stats (libnet_t * l, struct libnet_stats * ls)" -.PP -Fills in a libnet_stats structure with packet injection statistics (packets written, bytes written, packet sending errors). -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIls\fP pointer to a libnet statistics structure -.RE -.PP - -.SS "int libnet_toggle_checksum (libnet_t * l, libnet_ptag_t ptag, int mode)" -.PP -If a given protocol header is built with the checksum field set to '0', by default libnet will calculate the header checksum prior to injection. If the header is set to any other value, by default libnet will not calculate the header checksum. To over-ride this behavior, use \fBlibnet_toggle_checksum()\fP. Switches auto-checksumming on or off for the specified ptag. If mode is set to LIBNET_ON, libnet will mark the specificed ptag to calculate a checksum for the ptag prior to injection. This assumes that the ptag refers to a protocol that has a checksum field. If mode is set to LIBNET_OFF, libnet will clear the checksum flag and no checksum will be computed prior to injection. This assumes that the programmer will assign a value (zero or otherwise) to the checksum field. Often times this is useful if a precomputed checksum or some other predefined value is going to be used. Note that when libnet is initialized with LIBNET_RAW4, the IPv4 header checksum will always be computed by the kernel prior to injection, regardless of what the programmer sets. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.br -\fIptag\fP the ptag reference number -.br -\fImode\fP LIBNET_ON or LIBNET_OFF -.RE -.PP -\fBReturns:\fP -.RS 4 -1 on success, \-1 on failure -.RE -.PP - -.SS "int libnet_write (libnet_t * l)" -.PP -Writes a prebuilt packet to the network. The function assumes that l was previously initialized (via a call to \fBlibnet_init()\fP) and that a previously constructed packet has been built inside this context (via one or more calls to the libnet_build* family of functions) and is ready to go. Depending on how libnet was initialized, the function will write the packet to the wire either via the raw or link layer interface. The function will also bump up the internal libnet stat counters which are retrievable via \fBlibnet_stats()\fP. -.PP -\fBParameters:\fP -.RS 4 -\fIl\fP pointer to a libnet context -.RE -.PP -\fBReturns:\fP -.RS 4 -the number of bytes written, \-1 on error -.RE -.PP - -.SH "Author" -.PP -Generated automatically by Doxygen for libnet from the source code. diff --git a/libnet/doc/man/man3/libnet-headers.h.3 b/libnet/doc/man/man3/libnet-headers.h.3 deleted file mode 100644 index a3cd32f..0000000 --- a/libnet/doc/man/man3/libnet-headers.h.3 +++ /dev/null @@ -1,1872 +0,0 @@ -.TH "libnet-headers.h" 3 "10 Mar 2004" "libnet" \" -*- nroff -*- -.ad l -.nh -.SH NAME -libnet-headers.h \- libnet header information - -.SH SYNOPSIS -.br -.PP -.SS "Data Structures" - -.in +1c -.ti -1c -.RI "struct \fBlibnet_802_1q_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_802_1x_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_802_2_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_802_2snap_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_802_3_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ah_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_arp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_as_lsa_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_auth_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_bgp4_header_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_bgp4_notification_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_bgp4_open_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_cdp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_cdp_value_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_dbd_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_dhcpv4_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_dnsv4_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_esp_ftr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_esp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ether_addr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ethernet_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_fddi_addr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_fddi_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_gre_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_gre_sre_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_icmpv4_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_icmpv6_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_igmp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_in6_addr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ipv4_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ipv6_destopts_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ipv6_frag_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ipv6_hbhopts_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ipv6_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ipv6_routing_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_isl_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_lsa_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_lsr_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_lsu_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_mpls_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_net_lsa_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ntp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ntp_hdr_l_fp\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ntp_hdr_s_fp\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ospf_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_ospf_hello_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_rip_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_rpc_call\fP" -.br -.ti -1c -.RI "struct \fBlibnet_rpc_call_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_rpc_call_tcp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_rpc_opaque_auth\fP" -.br -.ti -1c -.RI "struct \fBlibnet_rtr_lsa_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_sebek_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_stp_conf_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_stp_tcn_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_sum_lsa_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_tcp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_token_ring_addr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_token_ring_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_udp_hdr\fP" -.br -.ti -1c -.RI "struct \fBlibnet_vrrp_hdr\fP" -.br -.in -1c -.SS "Defines" - -.in +1c -.ti -1c -.RI "#define \fBLIBNET_802_1Q_H\fP 0x12" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1X_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_802_2_H\fP 0x03" -.br -.ti -1c -.RI "#define \fBLIBNET_802_2SNAP_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_802_3_H\fP 0x0e" -.br -.ti -1c -.RI "#define \fBLIBNET_ARP_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_ARP_ETH_IP_H\fP 0x1c" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_HEADER_H\fP 0x13" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_OPEN_H\fP 0x0a" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UPDATE_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_NOTIFICATION_H\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCPV4_H\fP 0xf0" -.br -.ti -1c -.RI "#define \fBLIBNET_UDP_DNSV4_H\fP 0x0c" -.br -.ti -1c -.RI "#define \fBLIBNET_TCP_DNSV4_H\fP 0x0e" -.br -.ti -1c -.RI "#define \fBLIBNET_ETH_H\fP 0x0e" -.br -.ti -1c -.RI "#define \fBLIBNET_FDDI_H\fP 0x15" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_ECHO_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_MASK_H\fP 0x0c" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_UNREACH_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_TIMXCEED_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_REDIRECT_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV4_TS_H\fP 0x14" -.br -.ti -1c -.RI "#define \fBLIBNET_ICMPV6_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_IGMP_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV4_H\fP 0x14" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_H\fP 0x28" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_FRAG_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_ROUTING_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_DESTOPTS_H\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_HBHOPTS_H\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_IPSEC_ESP_HDR_H\fP 0x0c" -.br -.ti -1c -.RI "#define \fBLIBNET_IPSEC_ESP_FTR_H\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_IPSEC_AH_H\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_ISL_H\fP 0x1a" -.br -.ti -1c -.RI "#define \fBLIBNET_GRE_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_GRE_SRE_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_MPLS_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_H\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_HELLO_H\fP 0x18" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_DBD_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LSR_H\fP 0x0c" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LSU_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LSA_H\fP 0x14" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_AUTH_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_CKSUM\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LS_RTR_H\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LS_NET_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LS_SUM_H\fP 0x0c" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LS_AS_EXT_H\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_H\fP 0x30" -.br -.ti -1c -.RI "#define \fBLIBNET_RIP_H\fP 0x18" -.br -.ti -1c -.RI "#define \fBLIBNET_RPC_CALL_H\fP 0x28" -.br -.ti -1c -.RI "#define \fBLIBNET_RPC_CALL_TCP_H\fP 0x2c" -.br -.ti -1c -.RI "#define \fBLIBNET_SEBEK_H\fP 0x30" -.br -.ti -1c -.RI "#define \fBLIBNET_STP_CONF_H\fP 0x23" -.br -.ti -1c -.RI "#define \fBLIBNET_STP_TCN_H\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_TOKEN_RING_H\fP 0x16" -.br -.ti -1c -.RI "#define \fBLIBNET_TCP_H\fP 0x14" -.br -.ti -1c -.RI "#define \fBLIBNET_UDP_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_H\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1Q_PRIMASK\fP 0x0007" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1Q_CFIMASK\fP 0x0001" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1Q_VIDMASK\fP 0x0fff" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1X_PACKET\fP 0x00" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1X_START\fP 0x01" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1X_LOGOFF\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1X_KEY\fP 0x03" -.br -.ti -1c -.RI "#define \fBLIBNET_802_1X_ENCASFAL\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_SAP_STP\fP 0x42" -.br -.ti -1c -.RI "#define \fBLIBNET_SAP_SNAP\fP 0xaa" -.br -.ti -1c -.RI "#define \fBARPHRD_NETROM\fP 0" -.br -.ti -1c -.RI "#define \fBARPHRD_ETHER\fP 1" -.br -.ti -1c -.RI "#define \fBARPHRD_EETHER\fP 2" -.br -.ti -1c -.RI "#define \fBARPHRD_AX25\fP 3" -.br -.ti -1c -.RI "#define \fBARPHRD_PRONET\fP 4" -.br -.ti -1c -.RI "#define \fBARPHRD_CHAOS\fP 5" -.br -.ti -1c -.RI "#define \fBARPHRD_IEEE802\fP 6" -.br -.ti -1c -.RI "#define \fBARPHRD_ARCNET\fP 7" -.br -.ti -1c -.RI "#define \fBARPHRD_APPLETLK\fP 8" -.br -.ti -1c -.RI "#define \fBARPHRD_LANSTAR\fP 9" -.br -.ti -1c -.RI "#define \fBARPHRD_DLCI\fP 15" -.br -.ti -1c -.RI "#define \fBARPHRD_ATM\fP 19" -.br -.ti -1c -.RI "#define \fBARPHRD_METRICOM\fP 23" -.br -.ti -1c -.RI "#define \fBARPHRD_IPSEC\fP 31" -.br -.ti -1c -.RI "#define \fBARPOP_REQUEST\fP 1" -.br -.ti -1c -.RI "#define \fBARPOP_REPLY\fP 2" -.br -.ti -1c -.RI "#define \fBARPOP_REVREQUEST\fP 3" -.br -.ti -1c -.RI "#define \fBARPOP_REVREPLY\fP 4" -.br -.ti -1c -.RI "#define \fBARPOP_INVREQUEST\fP 8" -.br -.ti -1c -.RI "#define \fBARPOP_INVREPLY\fP 9" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_MARKER_SIZE\fP 16" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_OPEN\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UPDATE\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_NOTIFICATION\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_KEEPALIVE\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_MESSAGE_HEADER_ERROR\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_OPEN_MESSAGE_ERROR\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UPDATE_MESSAGE_ERROR\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_HOLD_TIMER_EXPIRED\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_FINITE_STATE__ERROR\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_CEASE\fP 6" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_CONNECTION_NOT_SYNCHRONIZED\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_BAD_MESSAGE_LENGTH\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_BAD_MESSAGE_TYPE\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UNSUPPORTED_VERSION_NUMBER\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_BAD_PEER_AS\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_BAD_BGP_IDENTIFIER\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UNSUPPORTED_OPTIONAL_PARAMETER\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_AUTHENTICATION_FAILURE\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UNACCEPTABLE_HOLD_TIME\fP 6" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_MALFORMED_ATTRIBUTE_LIST\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_UNRECOGNIZED_WELL_KNOWN_ATTRIBUTE\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_MISSING_WELL_KNOWN_ATTRIBUTE\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_ATTRIBUTE_FLAGS_ERROR\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_ATTRIBUTE_LENGTH_ERROR\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_INVALID_ORIGIN_ATTRIBUTE\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_AS_ROUTING_LOOP\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_INVALID_NEXT_HOP_ATTRIBUTE\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_OPTIONAL_ATTRIBUTE_ERROR\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_INVALID_NETWORK_FIELD\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_BGP4_MALFORMED_AS_PATH\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_PROTO_CDP\fP 200" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_DEVID\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_ADDRESS\fP 0x2" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_PORTID\fP 0x3" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAPABIL\fP 0x4" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_VERSION\fP 0x5" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_PLATFORM\fP 0x6" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_IPPREFIX\fP 0x7" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_L3R\fP 0x01" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_L2B\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_L2SRB\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_L2S\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_SR\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_NOI\fP 0x20" -.br -.ti -1c -.RI "#define \fBLIBNET_CDP_CAP_L1F\fP 0x40" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_REQUEST\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_REPLY\fP 0x2" -.br -.ti -1c -.RI "#define \fBDHCP_MAGIC\fP 0x63825363" -.br -.ti -1c -.RI "#define \fBLIBNET_BOOTP_MIN_LEN\fP 0x12c" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_PAD\fP 0x00" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_SUBNETMASK\fP 0x01" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_TIMEOFFSET\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_ROUTER\fP 0x03" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_TIMESERVER\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NAMESERVER\fP 0x05" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_DNS\fP 0x06" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_LOGSERV\fP 0x07" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_COOKIESERV\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_LPRSERV\fP 0x09" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_IMPSERV\fP 0x0a" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_RESSERV\fP 0x0b" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_HOSTNAME\fP 0x0c" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_BOOTFILESIZE\fP 0x0d" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_DUMPFILE\fP 0x0e" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_DOMAINNAME\fP 0x0f" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_SWAPSERV\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_ROOTPATH\fP 0x11" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_EXTENPATH\fP 0x12" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_IPFORWARD\fP 0x13" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_SRCROUTE\fP 0x14" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_POLICYFILTER\fP 0x15" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MAXASMSIZE\fP 0x16" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_IPTTL\fP 0x17" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MTUTIMEOUT\fP 0x18" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MTUTABLE\fP 0x19" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MTUSIZE\fP 0x1a" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_LOCALSUBNETS\fP 0x1b" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_BROADCASTADDR\fP 0x1c" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_DOMASKDISCOV\fP 0x1d" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MASKSUPPLY\fP 0x1e" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_DOROUTEDISC\fP 0x1f" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_ROUTERSOLICIT\fP 0x20" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_STATICROUTE\fP 0x21" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_TRAILERENCAP\fP 0x22" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_ARPTIMEOUT\fP 0x23" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_ETHERENCAP\fP 0x24" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_TCPTTL\fP 0x25" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_TCPKEEPALIVE\fP 0x26" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_TCPALIVEGARBAGE\fP 0x27" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NISDOMAIN\fP 0x28" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NISSERVERS\fP 0x29" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NISTIMESERV\fP 0x2a" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_VENDSPECIFIC\fP 0x2b" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NBNS\fP 0x2c" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NBDD\fP 0x2d" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NBTCPIP\fP 0x2e" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NBTCPSCOPE\fP 0x2f" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_XFONT\fP 0x30" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_XDISPLAYMGR\fP 0x31" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_DISCOVERADDR\fP 0x32" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_LEASETIME\fP 0x33" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_OPTIONOVERLOAD\fP 0x34" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MESSAGETYPE\fP 0x35" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_SERVIDENT\fP 0x36" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_PARAMREQUEST\fP 0x37" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MESSAGE\fP 0x38" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MAXMSGSIZE\fP 0x39" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_RENEWTIME\fP 0x3a" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_REBINDTIME\fP 0x3b" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_CLASSSID\fP 0x3c" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_CLIENTID\fP 0x3d" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NISPLUSDOMAIN\fP 0x40" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NISPLUSSERVERS\fP 0x41" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MOBILEIPAGENT\fP 0x44" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_SMTPSERVER\fP 0x45" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_POP3SERVER\fP 0x46" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_NNTPSERVER\fP 0x47" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_WWWSERVER\fP 0x48" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_FINGERSERVER\fP 0x49" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_IRCSERVER\fP 0x4a" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_STSERVER\fP 0x4b" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_STDASERVER\fP 0x4c" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_END\fP 0xff" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGDISCOVER\fP 0x01" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGOFFER\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGREQUEST\fP 0x03" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGDECLINE\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGACK\fP 0x05" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGNACK\fP 0x06" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGRELEASE\fP 0x07" -.br -.ti -1c -.RI "#define \fBLIBNET_DHCP_MSGINFORM\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_DNS_H\fP LIBNET_UDP_DNSV4_H" -.br -.ti -1c -.RI "#define \fBETHERTYPE_PUP\fP 0x0200" -.br -.ti -1c -.RI "#define \fBETHERTYPE_IP\fP 0x0800" -.br -.ti -1c -.RI "#define \fBETHERTYPE_ARP\fP 0x0806" -.br -.ti -1c -.RI "#define \fBETHERTYPE_REVARP\fP 0x8035" -.br -.ti -1c -.RI "#define \fBETHERTYPE_VLAN\fP 0x8100" -.br -.ti -1c -.RI "#define \fBETHERTYPE_EAP\fP 0x888e" -.br -.ti -1c -.RI "#define \fBETHERTYPE_MPLS\fP 0x8847" -.br -.ti -1c -.RI "#define \fBETHERTYPE_LOOPBACK\fP 0x9000" -.br -.ti -1c -.RI "#define \fBLIBNET_FDDI_LLC_FRAME\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_FDDI_48BIT_ADDR\fP 0x40" -.br -.ti -1c -.RI "#define \fBLIBNET_FDDI_FC_REQD\fP LIBNET_FDDI_LLC_FRAME | LIBNET_FDDI_48BIT_ADDR" -.br -.ti -1c -.RI "#define \fBFDDI_TYPE_IP\fP 0x0800" -.br -.ti -1c -.RI "#define \fBFDDI_TYPE_ARP\fP 0x0806" -.br -.ti -1c -.RI "#define \fBFDDI_TYPE_REVARP\fP 0x8035" -.br -.ti -1c -.RI "#define \fBGRE_CSUM\fP 0x8000" -.br -.ti -1c -.RI "#define \fBGRE_ROUTING\fP 0x4000" -.br -.ti -1c -.RI "#define \fBGRE_KEY\fP 0x2000" -.br -.ti -1c -.RI "#define \fBGRE_SEQ\fP 0x1000" -.br -.ti -1c -.RI "#define \fBGRE_STRICT\fP 0x0800" -.br -.ti -1c -.RI "#define \fBGRE_REC\fP 0x0700" -.br -.ti -1c -.RI "#define \fBGRE_ACK\fP 0x0080" -.br -.ti -1c -.RI "#define \fBGRE_FLAGS_MASK\fP 0x00F8" -.br -.ti -1c -.RI "#define \fBGRE_VERSION_MASK\fP 0x0007" -.br -.ti -1c -.RI "#define \fBGRE_VERSION_0\fP 0x0000" -.br -.ti -1c -.RI "#define \fBGRE_VERSION_1\fP 0x0001" -.br -.ti -1c -.RI "#define \fBGRE_SNA\fP 0x0004" -.br -.ti -1c -.RI "#define \fBGRE_OSI_NETWORK_LAYER\fP 0x00FE" -.br -.ti -1c -.RI "#define \fBGRE_PUP\fP 0x0200" -.br -.ti -1c -.RI "#define \fBGRE_XNS\fP 0x0600" -.br -.ti -1c -.RI "#define \fBGRE_IP\fP 0x0800" -.br -.ti -1c -.RI "#define \fBGRE_CHAOS\fP 0x0804" -.br -.ti -1c -.RI "#define \fBGRE_RFC_826_ARP\fP 0x0806" -.br -.ti -1c -.RI "#define \fBGRE_FRAME_RELAY_ARP\fP 0x0808" -.br -.ti -1c -.RI "#define \fBGRE_VINES\fP 0x0BAD" -.br -.ti -1c -.RI "#define \fBGRE_VINES_ECHO\fP 0x0BAE" -.br -.ti -1c -.RI "#define \fBGRE_VINES_LOOPBACK\fP 0x0BAF" -.br -.ti -1c -.RI "#define \fBGRE_DECNET\fP 0x6003" -.br -.ti -1c -.RI "#define \fBGRE_TRANSPARENT_ETHERNET_BRIDGING\fP 0x6558" -.br -.ti -1c -.RI "#define \fBGRE_RAW_FRAME_RELAY\fP 0x6559" -.br -.ti -1c -.RI "#define \fBGRE_APOLLO_DOMAIN\fP 0x8019" -.br -.ti -1c -.RI "#define \fBGRE_ETHERTALK\fP 0x809B" -.br -.ti -1c -.RI "#define \fBGRE_NOVELL_IPX\fP 0x8137" -.br -.ti -1c -.RI "#define \fBGRE_RFC_1144_TCP_IP_COMPRESSION\fP 0x876B" -.br -.ti -1c -.RI "#define \fBGRE_IP_AUTONOMOUS_SYSTEMS\fP 0x876C" -.br -.ti -1c -.RI "#define \fBGRE_SECURE_DATA\fP 0x876D" -.br -.ti -1c -.RI "#define \fBGRE_PPP\fP 0x880b" -.br -.ti -1c -.RI "#define \fBgre_sum\fP _data._gre.sum" -.br -.ti -1c -.RI "#define \fBgre_offset\fP _data._gre.offset" -.br -.ti -1c -.RI "#define \fBgre_key\fP _data._gre.key" -.br -.ti -1c -.RI "#define \fBgre_seq\fP _data._gre.seq" -.br -.ti -1c -.RI "#define \fBegre_payload_s\fP _data._egre.payload_s" -.br -.ti -1c -.RI "#define \fBegre_callID\fP _data._egre.callID" -.br -.ti -1c -.RI "#define \fBegre_seq\fP _data._egre.seq" -.br -.ti -1c -.RI "#define \fBegre_ack\fP _data._egre.ack" -.br -.ti -1c -.RI "#define \fBIPPROTO_GRE\fP 47" -.br -.ti -1c -.RI "#define \fBIPTOS_LOWDELAY\fP 0x10" -.br -.ti -1c -.RI "#define \fBIPTOS_THROUGHPUT\fP 0x08" -.br -.ti -1c -.RI "#define \fBIPTOS_RELIABILITY\fP 0x04" -.br -.ti -1c -.RI "#define \fBIPTOS_LOWCOST\fP 0x02" -.br -.ti -1c -.RI "#define \fBIP_RF\fP 0x8000" -.br -.ti -1c -.RI "#define \fBIP_DF\fP 0x4000" -.br -.ti -1c -.RI "#define \fBIP_MF\fP 0x2000" -.br -.ti -1c -.RI "#define \fBIP_OFFMASK\fP 0x1fff" -.br -.ti -1c -.RI "#define \fBIPOPT_EOL\fP 0" -.br -.ti -1c -.RI "#define \fBIPOPT_NOP\fP 1" -.br -.ti -1c -.RI "#define \fBIPOPT_RR\fP 7" -.br -.ti -1c -.RI "#define \fBIPOPT_TS\fP 68" -.br -.ti -1c -.RI "#define \fBIPOPT_SECURITY\fP 130" -.br -.ti -1c -.RI "#define \fBIPOPT_LSRR\fP 131" -.br -.ti -1c -.RI "#define \fBIPOPT_SATID\fP 136" -.br -.ti -1c -.RI "#define \fBIPOPT_SSRR\fP 137" -.br -.ti -1c -.RI "#define \fBlibnet_s6_addr\fP __u6_addr.__u6_addr8" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_NH_FRAGMENT\fP 44" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_NH_ROUTING\fP 43" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_NH_DESTOPTS\fP 60" -.br -.ti -1c -.RI "#define \fBLIBNET_IPV6_NH_HBH\fP 0" -.br -.ti -1c -.RI "#define \fBIPPROTO_ICMP6\fP 0x3a" -.br -.ti -1c -.RI "#define \fBICMP6_ECHO\fP 128" -.br -.ti -1c -.RI "#define \fBICMP6_ECHOREPLY\fP 129" -.br -.ti -1c -.RI "#define \fBICMP6_UNREACH\fP 1" -.br -.ti -1c -.RI "#define \fBICMP6_PKTTOOBIG\fP 2" -.br -.ti -1c -.RI "#define \fBICMP6_TIMXCEED\fP 3" -.br -.ti -1c -.RI "#define \fBICMP6_PARAMPROB\fP 4" -.br -.ti -1c -.RI "#define \fBICMP_ECHOREPLY\fP 0" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH\fP 3" -.br -.ti -1c -.RI "#define \fBICMP_SOURCEQUENCH\fP 4" -.br -.ti -1c -.RI "#define \fBICMP_REDIRECT\fP 5" -.br -.ti -1c -.RI "#define \fBICMP_ECHO\fP 8" -.br -.ti -1c -.RI "#define \fBICMP_ROUTERADVERT\fP 9" -.br -.ti -1c -.RI "#define \fBICMP_ROUTERSOLICIT\fP 10" -.br -.ti -1c -.RI "#define \fBICMP_TIMXCEED\fP 11" -.br -.ti -1c -.RI "#define \fBICMP_PARAMPROB\fP 12" -.br -.ti -1c -.RI "#define \fBICMP_TSTAMP\fP 13" -.br -.ti -1c -.RI "#define \fBICMP_TSTAMPREPLY\fP 14" -.br -.ti -1c -.RI "#define \fBICMP_IREQ\fP 15" -.br -.ti -1c -.RI "#define \fBICMP_IREQREPLY\fP 16" -.br -.ti -1c -.RI "#define \fBICMP_MASKREQ\fP 17" -.br -.ti -1c -.RI "#define \fBICMP_MASKREPLY\fP 18" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_NET\fP 0" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_HOST\fP 1" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_PROTOCOL\fP 2" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_PORT\fP 3" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_NEEDFRAG\fP 4" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_SRCFAIL\fP 5" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_NET_UNKNOWN\fP 6" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_HOST_UNKNOWN\fP 7" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_ISOLATED\fP 8" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_NET_PROHIB\fP 9" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_HOST_PROHIB\fP 10" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_TOSNET\fP 11" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_TOSHOST\fP 12" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_FILTER_PROHIB\fP 13" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_HOST_PRECEDENCE\fP 14" -.br -.ti -1c -.RI "#define \fBICMP_UNREACH_PRECEDENCE_CUTOFF\fP 15" -.br -.ti -1c -.RI "#define \fBICMP_REDIRECT_NET\fP 0" -.br -.ti -1c -.RI "#define \fBICMP_REDIRECT_HOST\fP 1" -.br -.ti -1c -.RI "#define \fBICMP_REDIRECT_TOSNET\fP 2" -.br -.ti -1c -.RI "#define \fBICMP_REDIRECT_TOSHOST\fP 3" -.br -.ti -1c -.RI "#define \fBICMP_TIMXCEED_INTRANS\fP 0" -.br -.ti -1c -.RI "#define \fBICMP_TIMXCEED_REASS\fP 1" -.br -.ti -1c -.RI "#define \fBICMP_PARAMPROB_OPTABSENT\fP 1" -.br -.ti -1c -.RI "#define \fBicmp_id\fP hun.echo.id" -.br -.ti -1c -.RI "#define \fBicmp_seq\fP hun.echo.seq" -.br -.ti -1c -.RI "#define \fBicmp_mask\fP dun.mask" -.br -.ti -1c -.RI "#define \fBicmp_data\fP dun.data" -.br -.ti -1c -.RI "#define \fBicmp_otime\fP dun.ts.its_otime" -.br -.ti -1c -.RI "#define \fBicmp_rtime\fP dun.ts.its_rtime" -.br -.ti -1c -.RI "#define \fBicmp_ttime\fP dun.ts.its_ttime" -.br -.ti -1c -.RI "#define \fBIGMP_MEMBERSHIP_QUERY\fP 0x11" -.br -.ti -1c -.RI "#define \fBIGMP_V1_MEMBERSHIP_REPORT\fP 0x12" -.br -.ti -1c -.RI "#define \fBIGMP_V2_MEMBERSHIP_REPORT\fP 0x16" -.br -.ti -1c -.RI "#define \fBIGMP_LEAVE_GROUP\fP 0x17" -.br -.ti -1c -.RI "#define \fBIPPROTO_ESP\fP 50" -.br -.ti -1c -.RI "#define \fBIPPROTO_AH\fP 51" -.br -.ti -1c -.RI "#define \fBLIBNET_PROTO_ISL\fP 201" -.br -.ti -1c -.RI "#define \fBIPPROTO_OSPF\fP 89" -.br -.ti -1c -.RI "#define \fBIPPROTO_OSPF_LSA\fP 890" -.br -.ti -1c -.RI "#define \fBLIBNET_MODX\fP 4102" -.br -.ti -1c -.RI "#define \fBLIBNET_OPT_EBIT\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_OPT_MCBIT\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_OPT_NPBIT\fP 0x08" -.br -.ti -1c -.RI "#define \fBLIBNET_OPT_EABIT\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_OPT_DCBIT\fP 0x20" -.br -.ti -1c -.RI "#define \fBLIBNET_MPLS_BOS_ON\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_MPLS_BOS_OFF\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_LI_NW\fP 0x0" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_LI_AS\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_LI_DS\fP 0x2" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_LI_AC\fP 0x3" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_VN_2\fP 0x2" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_VN_3\fP 0x3" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_VN_4\fP 0x4" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_R\fP 0x0" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_A\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_P\fP 0x2" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_C\fP 0x3" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_S\fP 0x4" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_B\fP 0x5" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_RC\fP 0x6" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_MODE_RP\fP 0x7" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_STRATUM_UNAVAIL\fP 0x0" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_STRATUM_PRIMARY\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_LOCAL\fP 0x4c4f434c" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_PPS\fP 0x50505300" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_ACTS\fP 0x41435453" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_USNO\fP 0x55534e4f" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_PTB\fP 0x50544200" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_TDF\fP 0x54444600" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_DCF\fP 0x44434600" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_MSF\fP 0x4d534600" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_WWV\fP 0x57575600" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_WWVB\fP 0x57575642" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_WWVH\fP 0x57575648" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_CHU\fP 0x43485500" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_LORC\fP 0x4c4f5243" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_OMEG\fP 0x4f4d4547" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_GPS\fP 0x47505300" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_REF_GOES\fP 0x474f4553" -.br -.ti -1c -.RI "#define \fBOSPFVERSION\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_UMD\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_HELLO\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_DBD\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LSR\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LSU\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_LSA\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_AUTH_NULL\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_AUTH_SIMPLE\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_AUTH_MD5\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_DBD_IBI\fP 0x01" -.br -.ti -1c -.RI "#define \fBLIBNET_DBD_MBIT\fP 0x02" -.br -.ti -1c -.RI "#define \fBLIBNET_DBD_MSBIT\fP 0x04" -.br -.ti -1c -.RI "#define \fBLIBNET_LS_TYPE_RTR\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_LS_TYPE_NET\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_LS_TYPE_IP\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_LS_TYPE_ASBR\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_LS_TYPE_ASEXT\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_RTR_FLAGS_W\fP 0x0100" -.br -.ti -1c -.RI "#define \fBLIBNET_RTR_FLAGS_E\fP 0x0200" -.br -.ti -1c -.RI "#define \fBLIBNET_RTR_FLAGS_B\fP 0x0400" -.br -.ti -1c -.RI "#define \fBLIBNET_LINK_ID_NBR_ID\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_LINK_ID_IP_DES\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_LINK_ID_SUB\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_RTR_TYPE_PTP\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_RTR_TYPE_TRANS\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_RTR_TYPE_STUB\fP 3" -.br -.ti -1c -.RI "#define \fBRTR_TYPE_VRTL\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_AS_E_BIT_ON\fP 0x80000000" -.br -.ti -1c -.RI "#define \fBRIPCMD_REQUEST\fP 1" -.br -.ti -1c -.RI "#define \fBRIPCMD_RESPONSE\fP 2" -.br -.ti -1c -.RI "#define \fBRIPCMD_TRACEON\fP 3" -.br -.ti -1c -.RI "#define \fBRIPCMD_TRACEOFF\fP 4" -.br -.ti -1c -.RI "#define \fBRIPCMD_POLL\fP 5" -.br -.ti -1c -.RI "#define \fBRIPCMD_POLLENTRY\fP 6" -.br -.ti -1c -.RI "#define \fBRIPCMD_MAX\fP 7" -.br -.ti -1c -.RI "#define \fBRIPVER_0\fP 0" -.br -.ti -1c -.RI "#define \fBRIPVER_1\fP 1" -.br -.ti -1c -.RI "#define \fBRIPVER_2\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_RPC_CALL\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_RPC_REPLY\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_RPC_VERS\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_RPC_LAST_FRAG\fP 0x80000000" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROGRAM\fP 100000" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_NULL\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_SET\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_UNSET\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_GETADDR\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_DUMP\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_CALLIT\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_BCAST\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_GETTIME\fP 6" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_UADDR2TADDR\fP 7" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_TADDR2UADDR\fP 8" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_GETVERSADDR\fP 9" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_INDIRECT\fP 10" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_GETADDRLIST\fP 11" -.br -.ti -1c -.RI "#define \fBLIBNET_PMAP_PROC_GETSTAT\fP 12" -.br -.ti -1c -.RI "#define \fBTH_FIN\fP 0x01" -.br -.ti -1c -.RI "#define \fBTH_SYN\fP 0x02" -.br -.ti -1c -.RI "#define \fBTH_RST\fP 0x04" -.br -.ti -1c -.RI "#define \fBTH_PUSH\fP 0x08" -.br -.ti -1c -.RI "#define \fBTH_ACK\fP 0x10" -.br -.ti -1c -.RI "#define \fBTH_URG\fP 0x20" -.br -.ti -1c -.RI "#define \fBTH_ECE\fP 0x40" -.br -.ti -1c -.RI "#define \fBTH_CWR\fP 0x80" -.br -.ti -1c -.RI "#define \fBLIBNET_TOKEN_RING_FRAME\fP 0x10" -.br -.ti -1c -.RI "#define \fBLIBNET_TOKEN_RING_LLC_FRAME\fP 0x40" -.br -.ti -1c -.RI "#define \fBTOKEN_RING_TYPE_IP\fP 0x0800" -.br -.ti -1c -.RI "#define \fBTOKEN_RING_TYPE_ARP\fP 0x0806" -.br -.ti -1c -.RI "#define \fBTOKEN_RING_TYPE_REVARP\fP 0x8035" -.br -.ti -1c -.RI "#define \fBSEBEK_PROTO_VERSION\fP 1" -.br -.ti -1c -.RI "#define \fBSEBEK_TYPE_READ\fP 0" -.br -.ti -1c -.RI "#define \fBSEBEK_TYPE_WRITE\fP 1" -.br -.ti -1c -.RI "#define \fBSEBEK_CMD_LENGTH\fP 12" -.br -.ti -1c -.RI "#define \fBIPPROTO_VRRP\fP 112" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_VERSION_01\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_VERSION_02\fP 0x2" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_TYPE_ADVERT\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_AUTH_NONE\fP 0x1" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_AUTH_PASSWD\fP 0x2" -.br -.ti -1c -.RI "#define \fBLIBNET_VRRP_AUTH_IPAH\fP 0x3" -.br -.in -1c -.SH "Detailed Description" -.PP -libnet header information - - -.SH "Define Documentation" -.PP -.SS "#define LIBNET_802_1Q_CFIMASK 0x0001" -.PP -CFI mask -.SS "#define LIBNET_802_1Q_H 0x12" -.PP -802.1Q header: 18 bytes -.SS "#define LIBNET_802_1Q_PRIMASK 0x0007" -.PP -priority mask -.SS "#define LIBNET_802_1Q_VIDMASK 0x0fff" -.PP -vid mask -.SS "#define LIBNET_802_1X_ENCASFAL 0x04" -.PP -802.1x encasfal -.SS "#define LIBNET_802_1X_H 0x04" -.PP -802.1X header: 4 bytes -.SS "#define LIBNET_802_1X_KEY 0x03" -.PP -802.1x key -.SS "#define LIBNET_802_1X_LOGOFF 0x02" -.PP -802.1x logoff -.SS "#define LIBNET_802_1X_PACKET 0x00" -.PP -802.1x packet -.SS "#define LIBNET_802_1X_START 0x01" -.PP -802.1x start -.SS "#define LIBNET_802_2_H 0x03" -.PP -802.2 LLC header: 3 bytes -.SS "#define LIBNET_802_2SNAP_H 0x08" -.PP -802.2 LLC/SNAP header:8 bytes -.SS "#define LIBNET_802_3_H 0x0e" -.PP -802.3 header: 14 bytes -.SS "#define LIBNET_ARP_ETH_IP_H 0x1c" -.PP -ARP w/ ETH and IP: 28 bytes -.SS "#define LIBNET_ARP_H 0x08" -.PP -ARP header w/o addrs: 8 bytes -.SS "#define LIBNET_BGP4_HEADER_H 0x13" -.PP -BGP header: 19 bytes -.SS "#define LIBNET_BGP4_NOTIFICATION_H 0x02" -.PP -BGP notif. header: 2 bytes -.SS "#define LIBNET_BGP4_OPEN_H 0x0a" -.PP -BGP open header: 10 bytes -.SS "#define LIBNET_BGP4_UPDATE_H 0x04" -.PP -BGP open header: 4 bytes -.SS "#define LIBNET_CDP_H 0x08" -.PP -CDP header base: 8 bytes -.SS "#define LIBNET_DHCPV4_H 0xf0" -.PP -DHCP v4 header: 240 bytes -.SS "#define LIBNET_ETH_H 0x0e" -.PP -Ethernet header: 14 bytes -.SS "#define LIBNET_FDDI_H 0x15" -.PP -FDDI header: 21 bytes -.SS "#define LIBNET_GRE_H 0x04" -.PP -GRE header: 4 bytes -.SS "#define LIBNET_GRE_SRE_H 0x04" -.PP -GRE SRE header: 4 bytes -.SS "#define LIBNET_ICMPV4_ECHO_H 0x08" -.PP -ICMP_ECHO header: 8 bytes -.SS "#define LIBNET_ICMPV4_H 0x04" -.PP -ICMP header base: 4 bytes -.SS "#define LIBNET_ICMPV4_MASK_H 0x0c" -.PP -ICMP_MASK header: 12 bytes -.SS "#define LIBNET_ICMPV4_REDIRECT_H 0x08" -.PP -ICMP_REDIRECT header: 8 bytes -.SS "#define LIBNET_ICMPV4_TIMXCEED_H 0x08" -.PP -ICMP_TIMXCEED header: 8 bytes -.SS "#define LIBNET_ICMPV4_TS_H 0x14" -.PP -ICMP_TIMESTAMP headr:20 bytes -.SS "#define LIBNET_ICMPV4_UNREACH_H 0x08" -.PP -ICMP_UNREACH header: 8 bytes -.SS "#define LIBNET_ICMPV6_H 0x08" -.PP -ICMP6 header base: 8 bytes -.SS "#define LIBNET_IGMP_H 0x08" -.PP -IGMP header: 8 bytes -.SS "#define LIBNET_IPSEC_AH_H 0x10" -.PP -IPSEC AH header: 16 bytes -.SS "#define LIBNET_IPSEC_ESP_FTR_H 0x02" -.PP -IPSEC ESP footer: 2 bytes -.SS "#define LIBNET_IPSEC_ESP_HDR_H 0x0c" -.PP -IPSEC ESP header: 12 bytes -.SS "#define LIBNET_IPV4_H 0x14" -.PP -IPv4 header: 20 bytes -.SS "#define LIBNET_IPV6_DESTOPTS_H 0x02" -.PP -IPv6 dest opts base: 2 bytes -.SS "#define LIBNET_IPV6_FRAG_H 0x08" -.PP -IPv6 frag header: 8 bytes -.SS "#define LIBNET_IPV6_H 0x28" -.PP -IPv6 header: 40 bytes -.SS "#define LIBNET_IPV6_HBHOPTS_H 0x02" -.PP -IPv6 hop/hop opt base:2 bytes -.SS "#define LIBNET_IPV6_ROUTING_H 0x04" -.PP -IPv6 frag header base:4 bytes -.SS "#define LIBNET_ISL_H 0x1a" -.PP -ISL header: 26 bytes -.SS "#define LIBNET_MPLS_H 0x04" -.PP -MPLS header: 4 bytes -.SS "#define LIBNET_NTP_H 0x30" -.PP -NTP header: 48 bytes -.SS "#define LIBNET_OSPF_AUTH_H 0x08" -.PP -OSPF AUTH header: 8 bytes -.SS "#define LIBNET_OSPF_CKSUM 0x10" -.PP -OSPF CKSUM header: 16 bytes -.SS "#define LIBNET_OSPF_DBD_H 0x08" -.PP -OSPF DBD header: 8 bytes -.SS "#define LIBNET_OSPF_H 0x10" -.PP -OSPF header: 16 bytes -.SS "#define LIBNET_OSPF_HELLO_H 0x18" -.PP -OSPF hello header: 24 bytes -.SS "#define LIBNET_OSPF_LS_AS_EXT_H 0x10" -.PP -OSPF LS AS header: 16 bytes -.SS "#define LIBNET_OSPF_LS_NET_H 0x08" -.PP -OSPF LS NET header: 8 bytes -.SS "#define LIBNET_OSPF_LS_RTR_H 0x10" -.PP -OSPF LS RTR header: 16 bytes -.SS "#define LIBNET_OSPF_LS_SUM_H 0x0c" -.PP -OSPF LS SUM header: 12 bytes -.SS "#define LIBNET_OSPF_LSA_H 0x14" -.PP -OSPF LSA header: 20 bytes -.SS "#define LIBNET_OSPF_LSR_H 0x0c" -.PP -OSPF LSR header: 12 bytes -.SS "#define LIBNET_OSPF_LSU_H 0x04" -.PP -OSPF LSU header: 4 bytes -.SS "#define LIBNET_RIP_H 0x18" -.PP -RIP header base: 24 bytes -.SS "#define LIBNET_RPC_CALL_H 0x28" -.PP -RPC header: 40 bytes (assuming 8 byte auth header) -.SS "#define LIBNET_RPC_CALL_TCP_H 0x2c" -.PP -RPC header: 44 bytes (with record marking) -.SS "#define LIBNET_STP_CONF_H 0x23" -.PP -STP conf header: 35 bytes -.SS "#define LIBNET_STP_TCN_H 0x04" -.PP -STP tcn header: 4 bytes -.SS "#define LIBNET_TCP_DNSV4_H 0x0e" -.PP -TCP DNS v4 header: 14 bytes -.SS "#define LIBNET_TCP_H 0x14" -.PP -TCP header: 20 bytes -.SS "#define LIBNET_TOKEN_RING_H 0x16" -.PP -Token Ring header: 22 bytes -.SS "#define LIBNET_UDP_DNSV4_H 0x0c" -.PP -UDP DNS v4 header: 12 bytes -.SS "#define LIBNET_UDP_H 0x08" -.PP -UDP header: 8 bytes -.SS "#define LIBNET_VRRP_H 0x08" -.PP -VRRP header: 8 bytes -.SH "Author" -.PP -Generated automatically by Doxygen for libnet from the source code. diff --git a/libnet/doc/man/man3/libnet-macros.h.3 b/libnet/doc/man/man3/libnet-macros.h.3 deleted file mode 100644 index ac99aa2..0000000 --- a/libnet/doc/man/man3/libnet-macros.h.3 +++ /dev/null @@ -1,172 +0,0 @@ -.TH "libnet-macros.h" 3 "10 Mar 2004" "libnet" \" -*- nroff -*- -.ad l -.nh -.SH NAME -libnet-macros.h \- libnet macros and symbloc constants - -.SH SYNOPSIS -.br -.PP -.SS "Defines" - -.in +1c -.ti -1c -.RI "#define \fBLIBNET_DONT_RESOLVE\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_RESOLVE\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_ON\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_OFF\fP 1" -.br -.ti -1c -.RI "#define \fBIN6ADDR_ERROR_INIT\fP" -.br -.ti -1c -.RI "#define \fBLIBNET_PR2\fP 0" -.br -.ti -1c -.RI "#define \fBLIBNET_PR8\fP 1" -.br -.ti -1c -.RI "#define \fBLIBNET_PR16\fP 2" -.br -.ti -1c -.RI "#define \fBLIBNET_PRu16\fP 3" -.br -.ti -1c -.RI "#define \fBLIBNET_PR32\fP 4" -.br -.ti -1c -.RI "#define \fBLIBNET_PRu32\fP 5" -.br -.ti -1c -.RI "#define \fBLIBNET_PRAND_MAX\fP 0xffffffff" -.br -.ti -1c -.RI "#define \fBLIBNET_MAX_PACKET\fP 0xffff" -.br -.ti -1c -.RI "#define \fBIP_MAXPACKET\fP 0xffff" -.br -.ti -1c -.RI "#define \fBETHER_ADDR_LEN\fP 0x6" -.br -.ti -1c -.RI "#define \fBFDDI_ADDR_LEN\fP 0x6" -.br -.ti -1c -.RI "#define \fBTOKEN_RING_ADDR_LEN\fP 0x6" -.br -.ti -1c -.RI "#define \fBLIBNET_ORG_CODE_SIZE\fP 0x3" -.br -.ti -1c -.RI "#define \fBLIBNET_ERRBUF_SIZE\fP 0x100" -.br -.ti -1c -.RI "#define \fBLIBNET_MAXOPTION_SIZE\fP 0x28" -.br -.ti -1c -.RI "#define \fBFIX\fP(n) (n)" -.br -.ti -1c -.RI "#define \fBUNFIX\fP(n) (n)" -.br -.ti -1c -.RI "#define \fBLIBNET_CKSUM_CARRY\fP(x) (x = (x >> 16) + (x & 0xffff), (~(x + (x >> 16)) & 0xffff))" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_AUTHCPY\fP(x, y) memcpy((u_int8_t *)x, (u_int8_t *)y, sizeof(y))" -.br -.ti -1c -.RI "#define \fBLIBNET_OSPF_CKSUMBUF\fP(x, y) memcpy((u_int8_t *)x, (u_int8_t *)y, sizeof(y))" -.br -.ti -1c -.RI "#define \fBLIBNET_NTP_DO_LI_VN_MODE\fP(li, vn, md) ((u_int8_t)((((li) << 6) & 0xc0) | (((vn) << 3) & 0x38) | ((md) & 0x7)))" -.br -.ti -1c -.RI "#define \fBLIBNET_ISLOOPBACK\fP(p) (strcmp((p)->ifr_name, 'lo0') == 0)" -.br -.ti -1c -.RI "#define \fBLIBNET_ISADVMODE\fP(x) (x & 0x08)" -.br -.ti -1c -.RI "#define \fBLIBNET_LABEL_SIZE\fP 64" -.br -.ti -1c -.RI "#define \fBLIBNET_LABEL_DEFAULT\fP 'cardshark'" -.br -.ti -1c -.RI "#define \fBCQ_LOCK_UNLOCKED\fP (u_int)0x00000000" -.br -.ti -1c -.RI "#define \fBCQ_LOCK_READ\fP (u_int)0x00000001" -.br -.ti -1c -.RI "#define \fBCQ_LOCK_WRITE\fP (u_int)0x00000002" -.br -.ti -1c -.RI "#define \fBfor_each_context_in_cq\fP(l) for (l = libnet_cq_head(); libnet_cq_last(); l = libnet_cq_next())" -.br -.ti -1c -.RI "#define \fBcq_is_wlocked\fP() (l_cqd.cq_lock & CQ_LOCK_WRITE)" -.br -.ti -1c -.RI "#define \fBcq_is_rlocked\fP() (l_cqd.cq_lock & CQ_LOCK_READ)" -.br -.ti -1c -.RI "#define \fBcq_is_locked\fP() (l_cqd.cq_lock & (CQ_LOCK_READ | CQ_LOCK_WRITE))" -.br -.ti -1c -.RI "#define \fBcheck_cq_lock\fP(x) (l_cqd.cq_lock & x)" -.br -.in -1c -.SH "Detailed Description" -.PP -libnet macros and symbloc constants - - -.SH "Define Documentation" -.PP -.SS "#define for_each_context_in_cq(l) for (l = libnet_cq_head(); libnet_cq_last(); l = libnet_cq_next())" -.PP -Provides an interface to iterate through the context queue of libnet contexts. Before calling this macro, be sure to set the queue using \fBlibnet_cq_head()\fP. -.SS "#define IN6ADDR_ERROR_INIT" -.PP -\fBValue:\fP.nf -{ { { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \ - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, \ - 0xff, 0xff } } } -.fi -IPv6 error code -.SS "#define LIBNET_DONT_RESOLVE 0" -.PP -Used for libnet's name resolution functions, specifies that no DNS lookups should be performed and the IP address should be kept in numeric form. -.SS "#define LIBNET_ERRBUF_SIZE 0x100" -.PP -The libnet error buffer is 256 bytes long. -.SS "#define LIBNET_MAX_PACKET 0xffff" -.PP -The biggest an IP packet can be -- 65,535 bytes. -.SS "#define LIBNET_MAXOPTION_SIZE 0x28" -.PP -IP and TCP options can be up to 40 bytes long. -.SS "#define LIBNET_OFF 1" -.PP -Used several places, to specify 'on' or 'one' -.SS "#define LIBNET_ON 0" -.PP -Used several places, to specify 'on' or 'one' -.SS "#define LIBNET_PR2 0" -.PP -Used for \fBlibnet_get_prand()\fP to specify function disposition -.SS "#define LIBNET_RESOLVE 1" -.PP -Used for libnet's name resolution functions, specifies that a DNS lookup can be performed if needed to resolve the IP address to a canonical form. -.SH "Author" -.PP -Generated automatically by Doxygen for libnet from the source code. diff --git a/libnet/doc/man/man3/libnet.h.3 b/libnet/doc/man/man3/libnet.h.3 deleted file mode 100644 index 5b55107..0000000 --- a/libnet/doc/man/man3/libnet.h.3 +++ /dev/null @@ -1,17 +0,0 @@ -.TH "libnet.h" 3 "10 Mar 2004" "libnet" \" -*- nroff -*- -.ad l -.nh -.SH NAME -libnet.h \- toplevel libnet header file - -.SH SYNOPSIS -.br -.PP -.SH "Detailed Description" -.PP -toplevel libnet header file - - -.SH "Author" -.PP -Generated automatically by Doxygen for libnet from the source code. diff --git a/libnet/doc/man/man3/libnet_802_1q_hdr.3 b/libnet/doc/man/man3/libnet_802_1q_hdr.3 deleted file mode 100644 index 7b73c92..0000000 --- a/libnet/doc/man/man3/libnet_802_1q_hdr.3 +++ /dev/null @@ -1,53 +0,0 @@ -.TH "libnet_802_1q_hdr" 3 "10 Mar 2004" "libnet" \" -*- nroff -*- -.ad l -.nh -.SH NAME -libnet_802_1q_hdr \- IEEE 802.1Q VLAN header -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.PP -.SS "Data Fields" - -.in +1c -.ti -1c -.RI "u_int8_t \fBvlan_dhost\fP [ETHER_ADDR_LEN]" -.br -.ti -1c -.RI "u_int8_t \fBvlan_shost\fP [ETHER_ADDR_LEN]" -.br -.ti -1c -.RI "u_int16_t \fBvlan_tpi\fP" -.br -.ti -1c -.RI "u_int16_t \fBvlan_priority_c_vid\fP" -.br -.ti -1c -.RI "u_int16_t \fBvlan_len\fP" -.br -.in -1c -.SH "Detailed Description" -.PP -IEEE 802.1Q (Virtual Local Area Network) VLAN header, static header size: 18 bytes -.SH "Field Documentation" -.PP -.SS "u_int8_t \fBlibnet_802_1q_hdr::vlan_dhost\fP[ETHER_ADDR_LEN]" -.PP -destination ethernet address -.SS "u_int16_t \fBlibnet_802_1q_hdr::vlan_len\fP" -.PP -length or type (802.3 / Eth 2) -.SS "u_int16_t \fBlibnet_802_1q_hdr::vlan_priority_c_vid\fP" -.PP -priority | VLAN ID -.SS "u_int8_t \fBlibnet_802_1q_hdr::vlan_shost\fP[ETHER_ADDR_LEN]" -.PP -source ethernet address -.SS "u_int16_t \fBlibnet_802_1q_hdr::vlan_tpi\fP" -.PP -tag protocol ID - -.SH "Author" -.PP -Generated automatically by Doxygen for libnet from the source code. diff --git a/libnet/doc/man/man3/libnet_802_1x_hdr.3 b/libnet/doc/man/man3/libnet_802_1x_hdr.3 deleted file mode 100644 index c4df2ae..0000000 --- a/libnet/doc/man/man3/libnet_802_1x_hdr.3 +++ /dev/null @@ -1,41 +0,0 @@ -.TH "libnet_802_1x_hdr" 3 "10 Mar 2004" "libnet" \" -*- nroff -*- -.ad l -.nh -.SH NAME -libnet_802_1x_hdr \- IEEE 802.1X EAP header -.SH SYNOPSIS -.br -.PP -\fC#include \fP -.PP -.SS "Data Fields" - -.in +1c -.ti -1c -.RI "u_int8_t \fBdot1x_version\fP" -.br -.ti -1c -.RI "u_int8_t \fBdot1x_type\fP" -.br -.ti -1c -.RI "u_int16_t \fBdot1x_length\fP" -.br -.in -1c -.SH "Detailed Description" -.PP -IEEE 802.1X EAP (Extensible Authentication Protocol) header, static header size: 4 bytes -.SH "Field Documentation" -.PP -.SS "u_int16_t \fBlibnet_802_1x_hdr::dot1x_length\fP" -.PP -total frame length -.SS "u_int8_t \fBlibnet_802_1x_hdr::dot1x_type\fP" -.PP -frame type -.SS "u_int8_t \fBlibnet_802_1x_hdr::dot1x_version\fP" -.PP -protocol version - -.SH "Author" -.PP -Generated automatically by Doxygen for libnet from the source code. diff --git a/libnet/include/Makefile.am b/libnet/include/Makefile.am deleted file mode 100644 index 5cea26e..0000000 --- a/libnet/include/Makefile.am +++ /dev/null @@ -1,7 +0,0 @@ -# $Id: Makefile.am,v 1.1.1.1 2003/06/26 21:55:10 route Exp $ - -include $(top_srcdir)/Makefile.am.common - -include_HEADERS = libnet.h - -SUBDIRS = libnet diff --git a/libnet/include/Makefile.in b/libnet/include/Makefile.in deleted file mode 100644 index 10565b8..0000000 --- a/libnet/include/Makefile.in +++ /dev/null @@ -1,395 +0,0 @@ -# Makefile.in generated by automake 1.6.3 from Makefile.am. -# @configure_input@ - -# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# 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@ - -# $Id: Makefile.in,v 1.13 2004/03/11 18:50:20 mike Exp $ - -# $Id: Makefile.in,v 1.13 2004/03/11 18:50:20 mike Exp $ -# -# Libnet automake information file -# Copyright (c) 1998 - 2004 Mike D. Schiffman -# All rights reserved. -# -SHELL = @SHELL@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -bindir = @bindir@ -sbindir = @sbindir@ -libexecdir = @libexecdir@ -datadir = @datadir@ -sysconfdir = @sysconfdir@ -sharedstatedir = @sharedstatedir@ -localstatedir = @localstatedir@ -libdir = @libdir@ -infodir = @infodir@ -mandir = @mandir@ -includedir = @includedir@ -oldincludedir = /usr/include -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. - -ACLOCAL = @ACLOCAL@ -AUTOCONF = @AUTOCONF@ -AUTOMAKE = @AUTOMAKE@ -AUTOHEADER = @AUTOHEADER@ - -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_HEADER = $(INSTALL_DATA) -transform = @program_transform_name@ -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_alias = @build_alias@ -build_triplet = @build@ -host_alias = @host_alias@ -host_triplet = @host@ -target_alias = @target_alias@ -target_triplet = @target@ - -EXEEXT = @EXEEXT@ -OBJEXT = @OBJEXT@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -ADDITIONAL_LIBS = @ADDITIONAL_LIBS@ -AMTAR = @AMTAR@ -AWK = @AWK@ -CC = @CC@ -DEPDIR = @DEPDIR@ -ENDIANESS = @ENDIANESS@ -HAVE_PACKET_SOCKET = @HAVE_PACKET_SOCKET@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LIBNET_CONFIG_CFLAGS = @LIBNET_CONFIG_CFLAGS@ -LIBNET_CONFIG_DEFINES = @LIBNET_CONFIG_DEFINES@ -LIBNET_CONFIG_LIBS = @LIBNET_CONFIG_LIBS@ -LIBNET_VERSION = @LIBNET_VERSION@ -MAINT = @MAINT@ -PACKAGE = @PACKAGE@ -RANLIB = @RANLIB@ -STRIP = @STRIP@ -VERSION = @VERSION@ -am__include = @am__include@ -am__quote = @am__quote@ -install_sh = @install_sh@ - -AUTOMAKE_OPTIONS = foreign no-dependencies - -DISTCLEANFILES = *~ - -include_HEADERS = libnet.h - -SUBDIRS = libnet -subdir = include -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = libnet.h -depcomp = -am__depfiles_maybe = -DIST_SOURCES = -HEADERS = $(include_HEADERS) - - -RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \ - uninstall-info-recursive all-recursive install-data-recursive \ - install-exec-recursive installdirs-recursive install-recursive \ - uninstall-recursive check-recursive installcheck-recursive -DIST_COMMON = $(include_HEADERS) Makefile.am Makefile.in config.h.in \ - libnet.h.in -DIST_SUBDIRS = $(SUBDIRS) -all: config.h - $(MAKE) $(AM_MAKEFLAGS) all-recursive - -.SUFFIXES: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/Makefile.am.common $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && \ - $(AUTOMAKE) --foreign include/Makefile -Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) - -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 include/config.h - -$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/acconfig.h - cd $(top_srcdir) && $(AUTOHEADER) - touch $(srcdir)/config.h.in - -distclean-hdr: - -rm -f config.h stamp-h1 -libnet.h: $(top_builddir)/config.status libnet.h.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -uninstall-info-am: -includeHEADERS_INSTALL = $(INSTALL_HEADER) -install-includeHEADERS: $(include_HEADERS) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(includedir) - @list='$(include_HEADERS)'; for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ - echo " $(includeHEADERS_INSTALL) $$d$$p $(DESTDIR)$(includedir)/$$f"; \ - $(includeHEADERS_INSTALL) $$d$$p $(DESTDIR)$(includedir)/$$f; \ - done - -uninstall-includeHEADERS: - @$(NORMAL_UNINSTALL) - @list='$(include_HEADERS)'; for p in $$list; do \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ - echo " rm -f $(DESTDIR)$(includedir)/$$f"; \ - rm -f $(DESTDIR)$(includedir)/$$f; \ - 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 - -ETAGS = etags -ETAGSFLAGS = - -tags: TAGS - -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-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -f $$subdir/TAGS && tags="$$tags -i $$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; }'`; \ - test -z "$(ETAGS_ARGS)$$tags$$unique" \ - || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_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 -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) - -top_distdir = .. -distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) - -distdir: $(DISTFILES) - @list='$(DISTFILES)'; for file in $$list; do \ - 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"; \ - $(mkinstalldirs) "$(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='$(SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ - test -d $(distdir)/$$subdir \ - || mkdir $(distdir)/$$subdir \ - || exit 1; \ - (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 $(HEADERS) config.h -installdirs: installdirs-recursive -installdirs-am: - $(mkinstalldirs) $(DESTDIR)$(includedir) - -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_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -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 - -distclean-am: clean-am distclean-generic distclean-hdr distclean-tags - -dvi: dvi-recursive - -dvi-am: - -info: info-recursive - -info-am: - -install-data-am: install-includeHEADERS - -install-exec-am: - -install-info: install-info-recursive - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-recursive - -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-recursive - -mostlyclean-am: mostlyclean-generic - -uninstall-am: uninstall-includeHEADERS uninstall-info-am - -uninstall-info: uninstall-info-recursive - -.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \ - clean-generic clean-recursive distclean distclean-generic \ - distclean-hdr distclean-recursive distclean-tags distdir dvi \ - dvi-am dvi-recursive info info-am info-recursive install \ - install-am install-data install-data-am install-data-recursive \ - install-exec install-exec-am install-exec-recursive \ - install-includeHEADERS install-info install-info-am \ - install-info-recursive install-man install-recursive \ - install-strip installcheck installcheck-am installdirs \ - installdirs-am installdirs-recursive maintainer-clean \ - maintainer-clean-generic maintainer-clean-recursive mostlyclean \ - mostlyclean-generic mostlyclean-recursive tags tags-recursive \ - uninstall uninstall-am uninstall-includeHEADERS \ - uninstall-info-am uninstall-info-recursive uninstall-recursive - -# 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/libnet/include/libnet.h.in b/libnet/include/libnet.h.in deleted file mode 100644 index 6f85bf8..0000000 --- a/libnet/include/libnet.h.in +++ /dev/null @@ -1,132 +0,0 @@ -/* - * $Id: libnet.h.in,v 1.5 2004/01/17 07:51:19 mike Exp $ - * - * libnet.h - Network routine library header file - * - * Copyright (c) 1998 - 2004 Mike D. Schiffman - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - */ - -#ifndef __LIBNET_H -#define __LIBNET_H -/** - * @file libnet.h - * @brief toplevel libnet header file - */ - -/** - * @mainpage Libnet Packet Assembly Library - * - * @section intro Overview - * - * Libnet is a high-level API (toolkit) allowing the application programmer to - * construct and inject network packets. It provides a portable and simplified - * interface for low-level network packet shaping, handling and injection. - * Libnet hides much of the tedium of packet creation from the application - * programmer such as multiplexing, buffer management, arcane packet header - * information, byte-ordering, OS-dependent issues, and much more. Libnet - * features portable packet creation interfaces at the IP layer and link layer, - * as well as a host of supplementary and complementary functionality. Using - * libnet, quick and simple packet assembly applications can be whipped up with - * little effort. With a bit more time, more complex programs can be written - * (Traceroute and ping were easily rewritten using libnet and - * libpcap). - */ - -#ifdef __cplusplus -extern "C" { -#endif - -#define _GNU_SOURCE -#include -#include -#include -#include -#include -#include -#if !defined(__WIN32__) -#include -#endif /* __WIN32__ */ -#if defined(HAVE_SYS_SOCKIO_H) && !defined(SIOCGIFADDR) -#include -#endif -#include -#include -#include -#if !defined(__WIN32__) -#include -#include -#include -#include -#include -#else /* __WIN32__ */ -#if (__CYGWIN__) -#include -#endif -#include -#include -#include -#include -#endif /* __WIN32__ */ -#if !(__linux__) && !(__WIN32__) && !(__APPLE__) && !(__CYGWIN__) && !(__GNU__) -#include -#else /* __linux__ */ -#if (HAVE_NET_ETHERNET_H) -#include -#endif /* HAVE_NET_ETHERNET_H */ -#endif /* __linux__ */ -#if !defined(__WIN32__) -#include -#include -#if (__linux__) && !(__GLIBC__) -/* we get multiple definitions of IGMP_AGE_THRESHOLD if we include netinet */ -#include -#else -#include -#endif -#include -#include -#include -#endif /* __WIN32__ */ -#include -#include - -#define LIBNET_VERSION "@LIBNET_VERSION@" -#define @ENDIANESS@ 1 - -#include "./libnet/libnet-types.h" -#include "./libnet/libnet-macros.h" -#include "./libnet/libnet-headers.h" -#include "./libnet/libnet-structures.h" -#include "./libnet/libnet-asn1.h" -#include "./libnet/libnet-functions.h" - -#ifdef __cplusplus -} -#endif - -#endif /* __LIBNET_H */ - -/* EOF */ diff --git a/libnet/include/libnet/.#libnet-functions.h.1.28 b/libnet/include/libnet/.#libnet-functions.h.1.28 deleted file mode 100644 index 303f591..0000000 --- a/libnet/include/libnet/.#libnet-functions.h.1.28 +++ /dev/null @@ -1,1582 +0,0 @@ -/* - * $Id: libnet-functions.h,v 1.28 2004/01/15 20:11:15 mike Exp $ - * - * libnet-functions.h - function prototypes - * - * Copyright (c) 1998 - 2004 Mike D. Schiffman - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - */ - -#ifndef __LIBNET_FUNCTIONS_H -#define __LIBNET_FUNCTIONS_H -/** - * @file libnet-functions.h - * @brief libnet exported function prototypes - */ - -/** - * Creates the libnet environment. It initializes the library and returns a - * libnet context. If the injection_type is LIBNET_LINK, the function - * initializes the injection primitives for the link-layer interface enabling - * the application programmer to build packets starting at the data-link layer - * (which also provides more granular control over the IP layer). If libnet - * uses the link-layer and the device argument is non-NULL, the function - * attempts to use the specified network device for packet injection. This - * is either a int16_t canonical string that references the device (such as - * "eth0" for a 100MB Ethernet card on Linux or "fxp0" for a 100MB Ethernet - * card on OpenBSD) or the dots and decimals representation of the device's - * IP address (192.168.0.1). If device is NULL, libnet attempts to find a - * suitable device to use. If the injection_type is LIBNET_RAW4, the function - * initializes the injection primitives for the IPv4 raw socket interface. The - * final argument, err_buf, should be a buffer of size LIBNET_ERRBUF_SIZE and - * holds an error message if the function fails. This function requires root - * privileges to execute successfully. Upon success, the function returns a - * valid libnet context for use in later function calls; upon failure, the - * function returns NULL. - * @param injection_type packet injection type (Add these later) - * @param device the interface to use (NULL and libnet will choose one) - * @param err_buf will contain an error message on failure - * @return libnet context ready for use or NULL on error. - */ -libnet_t * -libnet_init(int injection_type, char *device, char *err_buf); - -/** - * Shuts down the libnet session referenced by l. It closes the network - * interface and frees all internal memory structures associated with l. - * @param l pointer to a libnet context - */ -void -libnet_destroy(libnet_t *l); - -/** - * Clears the current packet referenced and frees all pblocks. Should be - * called when the programmer want to send a completely new packet of - * a different type using the same context. - * @param l pointer to a libnet context - */ -void -libnet_clear_packet(libnet_t *l); - -/** - * Fills in a libnet_stats structure with packet injection statistics - * (packets written, bytes written, packet sending errors). - * @param l pointer to a libnet context - * @param ls pointer to a libnet statistics structure - */ -void -libnet_stats(libnet_t *l, struct libnet_stats *ls); - -/** - * Returns the FILENO of the file descriptor used for packet injection. - * @param l pointer to a libnet context - * @return the file number of the file descriptor used for packet injection - */ -int -libnet_getfd(libnet_t *l); - -/** - * Returns the canonical name of the device used for packet injection. - * @param l pointer to a libnet context - * @return the canonical name of the device used for packet injection. Note - * it can be NULL without being an error. - */ -int8_t * -libnet_getdevice(libnet_t *l); - -/** - * Returns the pblock buffer contents for the specified ptag; a - * subsequent call to libnet_getpbuf_size() should be made to determine the - * size of the buffer. - * @param l pointer to a libnet context - * @param ptag the ptag reference number - * @return a pointer to the pblock buffer or NULL on error - */ -u_int8_t * -libnet_getpbuf(libnet_t *l, libnet_ptag_t ptag); - -/** - * Returns the pblock buffer size for the specified ptag; a - * previous call to libnet_getpbuf() should be made to pull the actual buffer - * contents. - * @param l pointer to a libnet context - * @param ptag the ptag reference number - * @return the size of the pblock buffer - */ -u_int32_t -libnet_getpbuf_size(libnet_t *l, libnet_ptag_t ptag); - -/** - * Returns the last error set inside of the referenced libnet context. This - * function should be called anytime a function fails or an error condition - * is detected inside of libnet. - * @param l pointer to a libnet context - * @return an error string or NULL if no error has occured - */ -char * -libnet_geterror(libnet_t *l); - -/** - * Seeds the psuedo-random number generator. - * @param l pointer to a libnet context - * @return 1 on success, -1 on failure - */ -int -libnet_seed_prand(libnet_t *l); - -/** - * Generates an unsigned psuedo-random value within the range specified by - * mod. - * LIBNET_PR2 0 - 1 - * LIBNET_PR8 0 - 255 - * LIBNET_PR16 0 - 32767 - * LIBNET_PRu16 0 - 65535 - * LIBNET_PR32 0 - 2147483647 - * LIBNET_PRu32 0 - 4294967295 - * - * @param mod one the of LIBNET_PR* constants - * @return 1 on success, -1 on failure - */ -u_int32_t -libnet_get_prand(int mod); - -/** - * If a given protocol header is built with the checksum field set to "0", by - * default libnet will calculate the header checksum prior to injection. If the - * header is set to any other value, by default libnet will not calculate the - * header checksum. To over-ride this behavior, use libnet_toggle_checksum(). - * Switches auto-checksumming on or off for the specified ptag. If mode is set - * to LIBNET_ON, libnet will mark the specificed ptag to calculate a checksum - * for the ptag prior to injection. This assumes that the ptag refers to a - * protocol that has a checksum field. If mode is set to LIBNET_OFF, libnet - * will clear the checksum flag and no checksum will be computed prior to - * injection. This assumes that the programmer will assign a value (zero or - * otherwise) to the checksum field. Often times this is useful if a - * precomputed checksum or some other predefined value is going to be used. - * Note that when libnet is initialized with LIBNET_RAW4, the IPv4 header - * checksum will always be computed by the kernel prior to injection, - * regardless of what the programmer sets. - * @param l pointer to a libnet context - * @param ptag the ptag reference number - * @param mode LIBNET_ON or LIBNET_OFF - * @return 1 on success, -1 on failure - */ -int -libnet_toggle_checksum(libnet_t *l, libnet_ptag_t ptag, int mode); - -/** - * Takes a network byte ordered IPv4 address and returns a pointer to either a - * canonical DNS name (if it has one) or a string of dotted decimals. This may - * incur a DNS lookup if the hostname and mode is set to LIBNET_RESOLVE. If - * mode is set to LIBNET_DONT_RESOLVE, no DNS lookup will be performed and - * the function will return a pointer to a dotted decimal string. The function - * cannot fail -- if no canonical name exists, it will fall back on returning - * a dotted decimal string. This function is non-reentrant. - * @param in network byte ordered IPv4 address - * @param use_name LIBNET_RESOLVE or LIBNET_DONT_RESOLVE - * @return a pointer to presentation format string - */ -char * -libnet_addr2name4(u_int32_t in, u_int8_t use_name); - -/** - * Takes a dotted decimal string or a canonical DNS name and returns a - * network byte ordered IPv4 address. This may incur a DNS lookup if mode is - * set to LIBNET_RESOLVE and host_name refers to a canonical DNS name. If mode - * is set to LIBNET_DONT_RESOLVE no DNS lookup will occur. The function can - * fail if DNS lookup fails or if mode is set to LIBNET_DONT_RESOLVE and - * host_name refers to a canonical DNS name. - * @param l pointer to a libnet context - * @param host_name pointer to a string containing a presentation format host - * name - * @param use_name LIBNET_RESOLVE or LIBNET_DONT_RESOLVE - * @return network byte ordered IPv4 address or -1 (2^32 - 1) on error - */ -u_int32_t -libnet_name2addr4(libnet_t *l, char *host_name, u_int8_t use_name); - -extern const struct libnet_in6_addr in6addr_error; - -/** - * Takes a dotted decimal string or a canonical DNS name and returns a - * network byte ordered IPv6 address. This may incur a DNS lookup if mode is - * set to LIBNET_RESOLVE and host_name refers to a canonical DNS name. If mode - * is set to LIBNET_DONT_RESOLVE no DNS lookup will occur. The function can - * fail if DNS lookup fails or if mode is set to LIBNET_DONT_RESOLVE and - * host_name refers to a canonical DNS name. - * @param l pointer to a libnet context - * @param host_name pointer to a string containing a presentation format host - * name - * @param use_name LIBNET_RESOLVE or LIBNET_DONT_RESOLVE - * @return network byte ordered IPv6 address structure - */ -struct libnet_in6_addr -libnet_name2addr6(libnet_t *l, char *host_name, u_int8_t use_name); - -/** - * Should document this baby right here. - */ -void -libnet_addr2name6_r(struct libnet_in6_addr addr, u_int8_t use_name, -char *host_name, int host_name_len); - -/** - * Creates a new port list. Port list chains are useful for TCP and UDP-based - * applications that need to send packets to a range of ports (contiguous or - * otherwise). The port list chain, which token_list points to, should contain - * a series of int8_tacters from the following list: "0123456789,-" of the - * general format "x - y, z", where "xyz" are port numbers between 0 and - * 65,535. plist points to the front of the port list chain list for use in - * further libnet_plist_chain() functions. Upon success, the function returns - * 1. Upon failure, the function returns -1 and libnet_geterror() can tell you - * why. - * @param l pointer to a libnet context - * @param plist if successful, will refer to the portlist, if not, NULL - * @param token_list string containing the port list primitive - * @return 1 on success, -1 on failure - */ -int -libnet_plist_chain_new(libnet_t *l, libnet_plist_t **plist, char *token_list); - -/** - * Returns the next port list chain pair from the port list chain plist. bport - * and eport contain the starting port number and ending port number, - * respectively. Upon success, the function returns 1 and fills in the port - * variables; however, if the list is empty, the function returns 0 and sets - * both port variables to 0. Upon failure, the function returns -1. - * @param plist previously created portlist - * @param bport will contain the beginning port number or 0 - * @param eport will contain the ending port number or 0 - * @return 1 on success, 0 if empty, -1 on failure - */ -int -libnet_plist_chain_next_pair(libnet_plist_t *plist, u_int16_t *bport, -u_int16_t *eport); - -/** - * Runs through the port list and prints the contents of the port list chain - * list to stdout. - * @param plist previously created portlist - * @return 1 on success, -1 on failure - */ -int -libnet_plist_chain_dump(libnet_plist_t *plist); - -/** - * Runs through the port list and prints the contents of the port list chain - * list to string. This function uses strdup and is not re-entrant. It also - * has a memory leak and should not really be used. - * @param plist previously created portlist - * @return a printable string containing the port list contents on success - * NULL on error - */ -char * -libnet_plist_chain_dump_string(libnet_plist_t *plist); - -/** - * Frees all memory associated with port list chain. - * @param plist previously created portlist - * @return 1 on success, -1 on failure - */ -int -libnet_plist_chain_free(libnet_plist_t *plist); - -/** - *\section PBF Packet Builder Functions - * - * The core of libnet is the platform-independent packet-building - * functionality. These functions enable an application programmer to build - * protocol headers (and data) in a simple and consistent manner without having - * to worry (too much) about low-level network odds and ends. Each - * libnet_build() function builds a piece of a packet (generally a protocol - * header). While it is perfectly possible to build an entire, - * ready-to-transmit packet with a single call to a libnet_build() function, - * generally more than one builder-class function call is required to construct - * a full packet. A complete wire-ready packet generally consists of more than - * one piece. - * Every function that builds a protocol header takes a series of arguments - * roughly corresponding to the header values as they appear on the wire. This - * process is intuitive but often makes for functions with huge prototypes and - * large stack frames. - * One important thing to note is that you must call these functions in order, - * corresponding to how they should appear on the wire (from the highest - * protocol layer on down). This building process is intuitive; it approximates - * what happens in an operating system kernel. In other words, to build a - * Network Time Protocol (NTP) packet by using the link-layer interface, the - * application programmer would call the libnet_build() functions in the - * following order: - * 1. libnet_build_ntp() - * 2. libnet_build_udp() - * 3. libnet_build_ipv4() - * 4. libnet_build_ethernet() - * This ordering is essential for libnet 1.1.x to properly link together the - * packet internally (previous libnet versions did not have the requirement). - * - *\subsection TPI The Payload Interface - * - * The payload interface specifies an optional way to include data directly - * after the protocol header in question. You can use this function for a - * variety of purposes, including the following: - * - Including additional or arbitrary protocol header information that is not - * available from a libnet interface - * - Including a packet payload (data segment) - * - Building another protocol header that is not available from a libnet - * interface - * To employ the interface, the application programmer should construct the i - * payload data and pass a u_int8_t * to this data and its size to the desired - * libnet_build() function. Libnet handles the rest. - * - *\subsection PT Protocol Tags and Packet Builder Return Values - * - * Libnet uses the protocol tag (ptag) to identify individual pieces of a - * packet after being created. A new ptag results every time a libnet_build() - * function with an empty (0) ptag argument completes successfully. This new - * ptag now refers to the packet piece just created. The application - * programmer's responsibility is to save this value if he or she plans to - * modify this particular portion later on in the program. If the application - * programmer needs to modify some portion of that particular packet piece - * again, he or she calls the same libnet_build() function specifying the - * saved ptag argument. Libnet then searches for that packet piece and modifies - * it rather than creating a new one. Upon failure for any reason, - * libnet_build() functions return -1; libnet_geterror()tells you why. - */ - -/** - * Builds an IEEE 802.1q VLAN tagging header. Depending on the value of - * len_proto, the function wraps the 802.1q header inside either an IEEE 802.3 - * header or an RFC 894 Ethernet II (DIX) header (both resulting in an 18-byte - * frame). If len is 1500 or less, most receiving protocol stacks parse the - * frame as an IEEE 802.3 encapsulated frame. If len is one of the Ethernet type - * values, most protocol stacks parse the frame as an RFC 894 Ethernet II - * encapsulated frame. Note the length value is calculated without the 802.1q - * header of 18 bytes. - * @param dst pointer to a six byte source ethernet address - * @param src pointer to a six byte destination ethernet address - * @param tpi tag protocol identifier - * @param priority priority - * @param cfi canonical format indicator - * @param vlan_id vlan identifier - * @param len_proto length (802.3) protocol (Ethernet II) - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_802_1q(u_int8_t *dst, u_int8_t *src, u_int16_t tpi, -u_int8_t priority, u_int8_t cfi, u_int16_t vlan_id, u_int16_t len_proto, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * Builds an IEEE 802.1x extended authentication protocol header. - * @param eap_ver the EAP version - * @param eap_type the EAP type - * @param length frame length - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_802_1x(u_int8_t eap_ver, u_int8_t eap_type, u_int16_t length, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * Builds an IEEE 802.2 LLC header. - * @param dsap destination service access point - * @param ssap source service access point - * @param control control field - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_802_2(u_int8_t dsap, u_int8_t ssap, u_int8_t control, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * Builds an IEEE 802.2 LLC SNAP header. - * @param dsap destination service access point - * @param ssap source service access point - * @param control control field - * @param oui Organizationally Unique Identifier - * @param type upper layer protocol - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_802_2snap(u_int8_t dsap, u_int8_t ssap, u_int8_t control, -u_int8_t *oui, u_int16_t type, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * Builds an IEEE 802.3 header. The 802.3 header is almost identical to the - * RFC 894 Ethernet II header, the exception being that the field immediately - * following the source address holds the frame's length (as opposed to the - * layer 3 protocol). You should only use this function when libnet is - * initialized with the LIBNET_LINK interface. - * @param dst destination ethernet address - * @param src source ethernet address - * @param len frame length sans header - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_802_3(u_int8_t *dst, u_int8_t *src, u_int16_t len, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * Builds an Ethernet header. The RFC 894 Ethernet II header is almost - * identical to the IEEE 802.3 header, with the exception that the field - * immediately following the source address holds the layer 3 protocol (as - * opposed to frame's length). You should only use this function when - * libnet is initialized with the LIBNET_LINK interface. - * @param dst destination ethernet address - * @param src source ethernet address - * @param type upper layer protocol type - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ethernet(u_int8_t *dst, u_int8_t *src, u_int16_t type, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * Autobuilds an Ethernet header. The RFC 894 Ethernet II header is almost - * identical to the IEEE 802.3 header, with the exception that the field - * immediately following the source address holds the layer 3 protocol (as - * opposed to frame's length). You should only use this function when - * libnet is initialized with the LIBNET_LINK interface. - * @param dst destination ethernet address - * @param type upper layer protocol type - * @param l pointer to a libnet context - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_ethernet(u_int8_t *dst, u_int16_t type, libnet_t *l); - -/** - * @param fc class format and priority - * @oaram dst destination fddi address - * @oaram src source fddi address - * @param dsap destination service access point - * @param ssap source service access point - * @param cf cf - * @param org IEEE organizational code - * @param type upper layer protocol - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_fddi(u_int8_t fc, u_int8_t *dst, u_int8_t *src, u_int8_t dsap, -u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_fddi(u_int8_t fc, u_int8_t *dst, u_int8_t dsap, u_int8_t ssap, -u_int8_t cf, u_int8_t *org, u_int16_t type, libnet_t *l); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_arp(u_int16_t hrd, u_int16_t pro, u_int8_t hln, u_int8_t pln, -u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, u_int8_t *tpa, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_arp(u_int16_t op, u_int8_t *sha, u_int8_t *spa, u_int8_t *tha, -u_int8_t *tpa, libnet_t *l); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_tcp(u_int16_t sp, u_int16_t dp, u_int32_t seq, u_int32_t ack, -u_int8_t control, u_int16_t win, u_int16_t sum, u_int16_t urg, u_int16_t len, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_tcp_options(u_int8_t *options, u_int32_t options_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_udp(u_int16_t sp, u_int16_t dp, u_int16_t len, u_int16_t sum, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_cdp(u_int8_t version, u_int8_t ttl, u_int16_t sum, u_int16_t type, -u_int16_t len, u_int8_t *value, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_icmpv4_echo(u_int8_t type, u_int8_t code, u_int16_t sum, -u_int16_t id, u_int16_t seq, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_icmpv4_mask(u_int8_t type, u_int8_t code, u_int16_t sum, -u_int16_t id, u_int16_t seq, u_int32_t mask, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_icmpv4_unreach(u_int8_t type, u_int8_t code, u_int16_t sum, -u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, -u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, -u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_icmpv4_redirect(u_int8_t type, u_int8_t code, u_int16_t sum, -u_int32_t gateway, u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, -u_int16_t orig_frag, u_int8_t orig_ttl, u_int8_t orig_prot, -u_int16_t orig_check, u_int32_t orig_src, u_int32_t orig_dst, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_icmpv4_timeexceed(u_int8_t type, u_int8_t code, u_int16_t sum, -u_int16_t orig_len, u_int8_t orig_tos, u_int16_t orig_id, u_int16_t orig_frag, -u_int8_t orig_ttl, u_int8_t orig_prot, u_int16_t orig_check, -u_int32_t orig_src, u_int32_t orig_dst, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_icmpv4_timestamp(u_int8_t type, u_int8_t code, u_int16_t sum, -u_int16_t id, u_int16_t seq, n_time otime, n_time rtime, n_time ttime, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_igmp(u_int8_t type, u_int8_t code, u_int16_t sum, u_int32_t ip, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv4(u_int16_t len, u_int8_t tos, u_int16_t id, u_int16_t frag, -u_int8_t ttl, u_int8_t prot, u_int16_t sum, u_int32_t src, u_int32_t dst, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv4_options(u_int8_t *options, u_int32_t options_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_ipv4(u_int16_t len, u_int8_t prot, u_int32_t dst, -libnet_t *l); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv6(u_int8_t tc, u_int32_t fl, u_int16_t len, u_int8_t nh, -u_int8_t hl, struct libnet_in6_addr src, struct libnet_in6_addr dst, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv6_frag(u_int8_t nh, u_int8_t reserved, u_int16_t frag, -u_int32_t id, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv6_routing(u_int8_t nh, u_int8_t len, u_int8_t rtype, -u_int8_t segments, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv6_destopts(u_int8_t nh, u_int8_t len, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipv6_hbhopts(u_int8_t nh, u_int8_t len, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_ipv6(u_int16_t len, u_int8_t nh, struct libnet_in6_addr dst, -libnet_t *l); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_isl(u_int8_t *dhost, u_int8_t type, u_int8_t user, u_int8_t *shost, -u_int16_t len, u_int8_t *snap, u_int16_t vid, u_int16_t index, -u_int16_t reserved, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipsec_esp_hdr(u_int32_t spi, u_int32_t seq, u_int32_t iv, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipsec_esp_ftr(u_int8_t len, u_int8_t nxt_hdr, int8_t *auth, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ipsec_ah(u_int8_t nxt_hdr, u_int8_t len, u_int16_t res, -u_int32_t spi, u_int32_t seq, u_int32_t auth, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_dnsv4(u_int16_t h_len, u_int16_t id, u_int16_t flags, -u_int16_t num_q, u_int16_t num_anws_rr, u_int16_t num_auth_rr, -u_int16_t num_addi_rr, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_rip(u_int8_t cmd, u_int8_t version, u_int16_t rd, u_int16_t af, -u_int16_t rt, u_int32_t addr, u_int32_t mask, u_int32_t next_hop, -u_int32_t metric, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_rpc_call(u_int32_t rm, u_int32_t xid, u_int32_t prog_num, -u_int32_t prog_vers, u_int32_t procedure, u_int32_t cflavor, u_int32_t clength, -u_int8_t *cdata, u_int32_t vflavor, u_int32_t vlength, u_int8_t *vdata, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_stp_conf(u_int16_t id, u_int8_t version, u_int8_t bpdu_type, -u_int8_t flags, u_int8_t *root_id, u_int32_t root_pc, u_int8_t *bridge_id, -u_int16_t port_id, u_int16_t message_age, u_int16_t max_age, -u_int16_t hello_time, u_int16_t f_delay, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_stp_tcn(u_int16_t id, u_int8_t version, u_int8_t bpdu_type, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_token_ring(u_int8_t ac, u_int8_t fc, u_int8_t *dst, u_int8_t *src, -u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_token_ring(u_int8_t ac, u_int8_t fc, u_int8_t *dst, -u_int8_t dsap, u_int8_t ssap, u_int8_t cf, u_int8_t *org, u_int16_t type, -libnet_t *l); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_vrrp(u_int8_t version, u_int8_t type, u_int8_t vrouter_id, -u_int8_t priority, u_int8_t ip_count, u_int8_t auth_type, u_int8_t advert_int, -u_int16_t sum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_mpls(u_int32_t label, u_int8_t experimental, u_int8_t bos, -u_int8_t ttl, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ntp(u_int8_t leap_indicator, u_int8_t version, u_int8_t mode, -u_int8_t stratum, u_int8_t poll, u_int8_t precision, u_int16_t delay_int, -u_int16_t delay_frac, u_int16_t dispersion_int, u_int16_t dispersion_frac, -u_int32_t reference_id, u_int32_t ref_ts_int, u_int32_t ref_ts_frac, -u_int32_t orig_ts_int, u_int32_t orig_ts_frac, u_int32_t rec_ts_int, -u_int32_t rec_ts_frac, u_int32_t xmt_ts_int, u_int32_t xmt_ts_frac, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2(u_int16_t len, u_int8_t type, u_int32_t rtr_id, -u_int32_t area_id, u_int16_t sum, u_int16_t autype, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_hello(u_int32_t netmask, u_int16_t interval, u_int8_t opts, -u_int8_t priority, u_int dead_int, u_int32_t des_rtr, u_int32_t bkup_rtr, -u_int32_t neighbor, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_dbd(u_int16_t dgram_len, u_int8_t opts, u_int8_t type, -u_int seqnum, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsr(u_int type, u_int lsid, u_int32_t advrtr, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsu(u_int num, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsa(u_int16_t age, u_int8_t opts, u_int8_t type, -u_int lsid, u_int32_t advrtr, u_int seqnum, u_int16_t sum, u_int16_t len, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsa_rtr(u_int16_t flags, u_int16_t num, u_int id, -u_int data, u_int8_t type, u_int8_t tos, u_int16_t metric, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsa_net(u_int32_t nmask, u_int rtrid, u_int8_t *payload, -u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsa_sum(u_int32_t nmask, u_int metric, u_int tos, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_ospfv2_lsa_as(u_int32_t nmask, u_int metric, u_int32_t fwdaddr, -u_int tag, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_data(u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_dhcpv4(u_int8_t opcode, u_int8_t htype, u_int8_t hlen, -u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, -u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t *chaddr, -u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_bootpv4(u_int8_t opcode, u_int8_t htype, u_int8_t hlen, -u_int8_t hopcount, u_int32_t xid, u_int16_t secs, u_int16_t flags, -u_int32_t cip, u_int32_t yip, u_int32_t sip, u_int32_t gip, u_int8_t *chaddr, -u_int8_t *sname, u_int8_t *file, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -inline u_int32_t libnet_gre_length(u_int16_t fv); - -#define libnet_egre_length libnet_gre_length - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_gre(u_int16_t fv, u_int16_t type, u_int16_t checksum, -u_int16_t offset, u_int32_t key, u_int32_t seq, u_int16_t len, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -#define libnet_build_egre libnet_build_gre - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_gre_sre(u_int16_t af, u_int8_t offset, u_int8_t length, -u_int8_t *routing, u_int8_t *payload, u_int32_t payload_s, libnet_t *l, -libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_gre_last_sre(libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_bgp4_header(u_int8_t marker[LIBNET_BGP4_MARKER_SIZE], -u_int16_t len, u_int8_t type, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_bgp4_open(u_int8_t version, u_int16_t src_as, u_int16_t hold_time, -u_int32_t bgp_id, u_int8_t opt_len, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_bgp4_update(u_int16_t unfeasible_rt_len, u_int8_t *withdrawn_rt, -u_int16_t total_path_attr_len, u_int8_t *path_attributes, u_int16_t info_len, -u_int8_t *reachability_info, u_int8_t *payload, u_int32_t payload_s, -libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_bgp4_notification(u_int8_t err_code, u_int8_t err_subcode, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_build_link(u_int8_t *dst, u_int8_t *src, u_int16_t type, -u_int8_t *payload, u_int32_t payload_s, libnet_t *l, libnet_ptag_t ptag); - -/** - * @param payload optional payload or NULL - * @param payload_s payload length or 0 - * @param l pointer to a libnet context - * @param ptag protocol tag to modify an existing header, 0 to build a new one - * @return protocol tag value on success, -1 on error - */ -libnet_ptag_t -libnet_autobuild_link(u_int8_t *dst, u_int16_t type, libnet_t *l); - -int -libnet_write(libnet_t *l); - -int -libnet_write_raw_ipv4(libnet_t *l, u_int8_t *packet, u_int32_t size); - -int -libnet_write_raw_ipv6(libnet_t *l, u_int8_t *packet, u_int32_t size); - -int -libnet_write_link(libnet_t *l, u_int8_t *packet, u_int32_t size); - -#if ((__WIN32__) && !(__CYGWIN__)) -SOCKET -libnet_open_raw4(libnet_t *l); -#else -int -libnet_open_raw4(libnet_t *l); -#endif - -int -libnet_close_raw4(libnet_t *l); - -int -libnet_open_raw6(libnet_t *l); - -int -libnet_close_raw6(libnet_t *l); - -int -libnet_select_device(libnet_t *l); - -int -libnet_open_link(libnet_t *l); - -int -libnet_close_link(libnet_t *l); - -u_int32_t -libnet_get_ipaddr4(libnet_t *l); - -struct libnet_in6_addr -libnet_get_ipaddr6(libnet_t *l); - -struct libnet_ether_addr * -libnet_get_hwaddr(libnet_t *l); - -int -libnet_do_checksum(libnet_t *l, u_int8_t *packet, int protocol, int len); - -u_int32_t -libnet_compute_crc(u_int8_t *buf, u_int32_t len); - -u_int16_t -libnet_ip_check(u_int16_t *addr, int len); - -int -libnet_in_cksum(u_int16_t *addr, int len); - - -/* - * libnet_pblock_probe - * - * If ptag is 0, function will create a pblock for the protocol unit type, - * append it to the list and return a pointer to it. If ptag is not 0, - * function will search the pblock list for the specified protocol block - * and return a pointer to it. - */ -libnet_pblock_t * -libnet_pblock_probe(libnet_t *l, libnet_ptag_t ptag, u_int32_t n, -u_int8_t type); - -/* - * libnet_pblock_new - * - * Function creates the pblock list if l->protocol_blocks == NULL or appends - * an entry to the doubly linked list. - */ -libnet_pblock_t * -libnet_pblock_new(libnet_t *l, u_int32_t size); - - -/* - * libnet_pblock_swap - * - * Function swaps two pblocks in memory. - */ -int -libnet_pblock_swap(libnet_t *l, libnet_ptag_t ptag1, libnet_ptag_t ptag2); - - -/* - * libnet_pblock_insert_before - * - * Function inserts a pblock into the doubly linked list. - */ -int -libnet_pblock_insert_before(libnet_t *l, libnet_ptag_t ptag1, -libnet_ptag_t ptag2); - -/* - * libnet_pblock_delete - * - * Function removes a pblock from context - */ -void -libnet_pblock_delete(libnet_t *l, libnet_pblock_t *p); - -/* - * libnet_pblock_update - * - * Function updates the pblock meta-inforation. Internally it updates the - * ptag with a monotonically increasing variable kept in l. This way each - * pblock has a succesively increasing ptag identifier. - */ -libnet_ptag_t -libnet_pblock_update(libnet_t *l, libnet_pblock_t *p, u_int32_t h, -u_int8_t type); - - -/* - * libnet_pblock_find - * - * Function locates a given block by it's ptag. - */ -libnet_pblock_t * -libnet_pblock_find(libnet_t *l, libnet_ptag_t ptag); - - -/* - * libnet_pblock_append - * - * Function copies protocol block data over. - */ -int -libnet_pblock_append(libnet_t *l, libnet_pblock_t *p, u_int8_t *buf, -u_int32_t len); - - -/* - * libnet_pblock_setflags - * - * Function sets pblock flags. - */ -void -libnet_pblock_setflags(libnet_pblock_t *p, u_int8_t flags); - - -/* - * libnet_pblock_p2p - * - * Function returns the protocol number for the protocol block type. If - * the type is unknown, the function defaults to returning IPPROTO_IP. - */ -int -libnet_pblock_p2p(u_int8_t type); - - -/* - * libnet_pblock_coalesce - * - * Function assembles the packet for subsequent writing. Function makes two - * passes through the pblock list: - * 1st & 2nd) determine total size of the packet for contiguous malloc - * and copy over packet chunks - * 3rd run) run through the original list and see which protocol blocks had - * the checksum flag set (checksums usually need to be done over - * an assembled packet so it's easier to do it here) - */ -int -libnet_pblock_coalesce(libnet_t *l, u_int8_t **packet, u_int32_t *size); - - -/* - * __libnet_dump_context - * - * Function returns the contents of the libnet file context. Not meant for - * the applications programer. - */ -void -__libnet_dump_context(libnet_t *l); - -/* - * __libnet_dump_pblock - * - * Function returns the contents of each pblock in a given context. Not meant - * for the applications programer. - */ -void -__libnet_dump_pblock(libnet_t *l); - -/* - * __libnet_dump_pblock_type - * - * Function returns a canonical string referring to the pblock type. - */ -int8_t * -__libnet_dump_pblock_type(u_int8_t type); - -/* - * __libnet_hex_dump - * - * Function dumps the contents of the supplied buffer to the supplied - * stream pointer. Very useful for debugging. Will swap endianness based - * disposition of mode variable. Use requires unwrapping the libnet file - * context structure so it's hidden down here. If you find it, consider - * yourself a trepid adventurer. - */ -void -__libnet_dump_hex(u_int8_t *packet, u_int32_t len, int swap, FILE *stream); - - -/* - * libnet_hex_aton - * - * hexidecimal strings of the format "##:##:##:## ... :##:##" to a uint8_t. - * - */ -u_int8_t * -libnet_hex_aton(int8_t *s, int *len); - -/* - * libnet_adv_cull_packet - * - * advanced interface, culls the packet from inside libnet, wraps - * libnet_pblock_coalesce(). - * - */ -int -libnet_adv_cull_packet(libnet_t *l, u_int8_t **packet, u_int32_t *packet_s); - -/* - * libnet_adv_cull_header - * - * advanced interface, culls the header from referenced ptag from inside - * libnet. - * - */ -int -libnet_adv_cull_header(libnet_t *l, libnet_ptag_t ptag, u_int8_t **header, -u_int32_t *header_s); - -/* - * libnet_adv_write_link - * - * advanced interface, writes a prebuilt frame to the wire - * - */ -int -libnet_adv_write_link(libnet_t *l, u_int8_t *packet, u_int32_t packet_s); - -/* - * libnet_cq_add - * - * Function adds a context to the libnet context queue. - */ -int -libnet_cq_add(libnet_t *l, char *label); - -/* - * libnet_cq_remove - * - * Function removes a context from the libnet context queue. - * - */ -libnet_t * -libnet_cq_remove(libnet_t *l); - -/* - * libnet_cq_remove_by_label - * - * Function removes a libnet context from the queue, indexed by it's - * canonical label. - */ -libnet_t * -libnet_cq_remove_by_label(char *label); - -/* - * libnet_cq_getlabel - * - * Function returns the label (if any) associated with the context. - */ -int8_t * -libnet_cq_getlabel(libnet_t *l); - -/* - * libnet_cq_find_by_label - * - * Function locates a libnet context from the queue, indexed by it's - * canonical label. - * - */ -libnet_t * -libnet_cq_find_by_label(char *label); - -/* - * libnet_cq_destroy - * - * Function destroys the entire context queue, calling libnet_destory() on - * each member context. - */ -void libnet_cq_destroy(); - -/* - * libnet_cq_head - * - * Function intiailizes the interator interface and sets a write lock on - * the context queue. - */ -libnet_t * -libnet_cq_head(); - -/* - * libnet_cq_head - * - * Function returns 1 if at the end of the context queue, 0 otherwise. - */ -int -libnet_cq_last(); - -/* - * libnet_cq_head - * - * Function returns the next context from the context queue. - */ -libnet_t * -libnet_cq_next(); - -/* - * libnet_cq_size - * - * Function returns the number of entries in the context queue. - */ -u_int32_t -libnet_cq_size(); - -/* - * libnet_check_iface - * - * By testing if we can retrieve the FLAGS of an iface - * we can know if it exists or not and if it is up. - */ -int -libnet_check_iface(libnet_t *l); - - -#if defined(__WIN32__) -BYTE * -libnet_win32_get_remote_mac(libnet_t *l, DWORD IP); -int -libnet_close_link_interface(libnet_t *l); -BYTE * -libnet_win32_read_arp_table(DWORD IP); -#endif -#endif /* __LIBNET_FUNCTIONS_H */ - -/* EOF */ diff --git a/libnet/include/libnet/Makefile.am b/libnet/include/libnet/Makefile.am deleted file mode 100644 index ef43b53..0000000 --- a/libnet/include/libnet/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -# $Id: Makefile.am,v 1.2 2003/10/18 17:20:03 mike Exp $ - -include $(top_srcdir)/Makefile.am.common - -libnetincludedir = $(includedir)/libnet - -libnetinclude_HEADERS = libnet-asn1.h \ - libnet-functions.h \ - libnet-headers.h \ - libnet-macros.h \ - libnet-structures.h \ - libnet-types.h diff --git a/libnet/include/stamp-h.in b/libnet/include/stamp-h.in deleted file mode 100644 index 9788f70..0000000 --- a/libnet/include/stamp-h.in +++ /dev/null @@ -1 +0,0 @@ -timestamp diff --git a/libnet/install-sh b/libnet/install-sh deleted file mode 100755 index cbf15ed..0000000 --- a/libnet/install-sh +++ /dev/null @@ -1,250 +0,0 @@ -#! /bin/sh -# -# install - install a program, script, or datafile -# This comes from X11R5 (mit/util/scripts/install.sh). -# -# Copyright 1991 by the Massachusetts Institute of Technology -# -# Permission to use, copy, modify, distribute, and sell this software and its -# documentation for any purpose is hereby granted without fee, provided that -# the above copyright notice appear in all copies and that both that -# copyright notice and this permission notice appear in supporting -# documentation, and that the name of M.I.T. not be used in advertising or -# publicity pertaining to distribution of the software without specific, -# written prior permission. M.I.T. makes no representations about the -# suitability of this software for any purpose. It is provided "as is" -# without express or implied warranty. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. It can only install one file at a time, a restriction -# shared with many OS's install programs. - - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - - -# put in absolute paths if you don't have them in your path; or use env. vars. - -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" - -transformbasename="" -transform_arg="" -instcmd="$cpprog" -chmodcmd="$chmodprog 0755" -chowncmd="" -chgrpcmd="" -stripcmd="" -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src="" -dst="" -dir_arg="" - -while [ x"$1" != x ]; do - case $1 in - -c) instcmd="$cpprog" - shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - -s) stripcmd="$stripprog" - shift - continue;; - - -t=*) transformarg=`echo $1 | sed 's/-t=//'` - shift - continue;; - - -b=*) transformbasename=`echo $1 | sed 's/-b=//'` - shift - continue;; - - *) if [ x"$src" = x ] - then - src=$1 - else - # this colon is to work around a 386BSD /bin/sh bug - : - dst=$1 - fi - shift - continue;; - esac -done - -if [ x"$src" = x ] -then - echo "install: no input file specified" - exit 1 -else - true -fi - -if [ x"$dir_arg" != x ]; then - dst=$src - src="" - - if [ -d $dst ]; then - instcmd=: - else - instcmd=mkdir - fi -else - -# Waiting for this to be detected by the "$instcmd $src $dsttmp" command -# might cause directories to be created, which would be especially bad -# if $src (and thus $dsttmp) contains '*'. - - if [ -f $src -o -d $src ] - then - true - else - echo "install: $src does not exist" - exit 1 - fi - - if [ x"$dst" = x ] - then - echo "install: no destination specified" - exit 1 - else - true - fi - -# If destination is a directory, append the input filename; if your system -# does not like double slashes in filenames, you may need to add some logic - - if [ -d $dst ] - then - dst="$dst"/`basename $src` - else - true - fi -fi - -## this sed command emulates the dirname command -dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` - -# Make sure that the destination directory exists. -# this part is taken from Noah Friedman's mkinstalldirs script - -# Skip lots of stat calls in the usual case. -if [ ! -d "$dstdir" ]; then -defaultIFS=' -' -IFS="${IFS-${defaultIFS}}" - -oIFS="${IFS}" -# Some sh's can't handle IFS=/ for some reason. -IFS='%' -set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` -IFS="${oIFS}" - -pathcomp='' - -while [ $# -ne 0 ] ; do - pathcomp="${pathcomp}${1}" - shift - - if [ ! -d "${pathcomp}" ] ; - then - $mkdirprog "${pathcomp}" - else - true - fi - - pathcomp="${pathcomp}/" -done -fi - -if [ x"$dir_arg" != x ] -then - $doit $instcmd $dst && - - if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi -else - -# If we're going to rename the final executable, determine the name now. - - if [ x"$transformarg" = x ] - then - dstfile=`basename $dst` - else - dstfile=`basename $dst $transformbasename | - sed $transformarg`$transformbasename - fi - -# don't allow the sed command to completely eliminate the filename - - if [ x"$dstfile" = x ] - then - dstfile=`basename $dst` - else - true - fi - -# Make a temp file name in the proper directory. - - dsttmp=$dstdir/#inst.$$# - -# Move or copy the file name to the temp name - - $doit $instcmd $src $dsttmp && - - trap "rm -f ${dsttmp}" 0 && - -# and set any options; do chmod last to preserve setuid bits - -# If any of these fail, we abort the whole thing. If we want to -# ignore errors from any of these, just make sure not to ignore -# errors from the above "$doit $instcmd $src $dsttmp" command. - - if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && - -# Now rename the file to the real destination. - - $doit $rmcmd -f $dstdir/$dstfile && - $doit $mvcmd $dsttmp $dstdir/$dstfile - -fi && - - -exit 0 diff --git a/libnet/libnet-config.in b/libnet/libnet-config.in deleted file mode 100644 index da86f12..0000000 --- a/libnet/libnet-config.in +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/sh -# -# $Id: libnet-config.in,v 1.3 2004/01/03 20:31:00 mike Exp $ -# -# Libnet 1.1 libnet-config compilation script -# (c) 1998 - 2004 Mike D. Schiffman -# -# @configure_input@ - -libnet_defines="@LIBNET_CONFIG_DEFINES@" -libnet_cflags="@LIBNET_CONFIG_CFLAGS@" -libnet_libs="@LIBNET_CONFIG_LIBS@ -lnet" - -usage() -{ - cat <