Adding upstream version 1.5.0.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
4f2087bb21
commit
01446c9ac8
419 changed files with 3061 additions and 1380 deletions
41
CHANGES
41
CHANGES
|
@ -1,3 +1,44 @@
|
||||||
|
2025-04-16 Jerry Lundström
|
||||||
|
|
||||||
|
Release v1.5.0
|
||||||
|
|
||||||
|
This releases adds a new function to return a label quoted as described
|
||||||
|
in RFC 1035, adds support for link-type Linux cooked v2 and fixes
|
||||||
|
padding calculations for UDP, IPv4 and IPv6 packets.
|
||||||
|
|
||||||
|
New:
|
||||||
|
- `core.object.dns.label`: Add `torfc1035()`
|
||||||
|
- `core.object`: Add `linuxsll2` object
|
||||||
|
- `filter.layer`: Add support for DLT_LINUX_SLL2
|
||||||
|
- `filter.copy`: Add support for DLT_LINUX_SLL2
|
||||||
|
|
||||||
|
Fixes:
|
||||||
|
- Fix #250: handle endian in tests
|
||||||
|
- Fix #252
|
||||||
|
- `core.object.ip6`: Add `hlen` for total length of header with all extensions
|
||||||
|
- `filter.layer`:
|
||||||
|
- correct UDP padding calculation
|
||||||
|
- Fix padding calculation for IPv4 packet when options exists
|
||||||
|
- Fix padding calculation for IPv6 packets
|
||||||
|
- Store `hlen` for IPv6 packets
|
||||||
|
- Add test for padding
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
- Simplify and speedup pcap2tcpdns example
|
||||||
|
|
||||||
|
d03a184 DLT_LINUX_SLL2
|
||||||
|
1cd3836 torfc1035
|
||||||
|
8d8746f Fix IPv6 hlen
|
||||||
|
75b634b Padding
|
||||||
|
b8bfcf8 Simplify and speedup pcap2tcpdns example
|
||||||
|
e37bb92 Fix log name in examples/pcap2tcpdns.lua
|
||||||
|
80b7c34 UDP padding
|
||||||
|
9a28aee ipsplit endian
|
||||||
|
375e9e8 SPEC
|
||||||
|
c82c0ca RPM
|
||||||
|
74fbda2 COPR tweaks
|
||||||
|
3691bd8 RPM spec
|
||||||
|
|
||||||
2024-08-28 Jerry Lundström
|
2024-08-28 Jerry Lundström
|
||||||
|
|
||||||
Release 1.4.0
|
Release 1.4.0
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
@ -288,6 +288,7 @@ EGREP = @EGREP@
|
||||||
ETAGS = @ETAGS@
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
|
|
@ -137,7 +137,7 @@ See more examples in the [examples](https://github.com/DNS-OARC/dnsjit/tree/deve
|
||||||
|
|
||||||
## Copyright
|
## Copyright
|
||||||
|
|
||||||
Copyright (c) 2018-2024 OARC, Inc.
|
Copyright (c) 2018-2025 OARC, Inc.
|
||||||
|
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
|
72
aclocal.m4
vendored
72
aclocal.m4
vendored
|
@ -20,7 +20,7 @@ You have another version of autoconf. It may work, but is not guaranteed to.
|
||||||
If you have problems, you may need to regenerate the build system entirely.
|
If you have problems, you may need to regenerate the build system entirely.
|
||||||
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
|
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
|
||||||
|
|
||||||
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
|
# pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*-
|
||||||
# serial 12 (pkg-config-0.29.2)
|
# serial 12 (pkg-config-0.29.2)
|
||||||
|
|
||||||
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
|
dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
|
||||||
|
@ -108,7 +108,7 @@ dnl Check to see whether a particular set of modules exists. Similar to
|
||||||
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
|
dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
|
||||||
dnl
|
dnl
|
||||||
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||||
dnl only at the first occurence in configure.ac, so if the first place
|
dnl only at the first occurrence in configure.ac, so if the first place
|
||||||
dnl it's called might be skipped (such as if it is within an "if", you
|
dnl it's called might be skipped (such as if it is within an "if", you
|
||||||
dnl have to call PKG_CHECK_EXISTS manually
|
dnl have to call PKG_CHECK_EXISTS manually
|
||||||
AC_DEFUN([PKG_CHECK_EXISTS],
|
AC_DEFUN([PKG_CHECK_EXISTS],
|
||||||
|
@ -296,6 +296,74 @@ AS_VAR_COPY([$1], [pkg_cv_][$1])
|
||||||
AS_VAR_IF([$1], [""], [$5], [$4])dnl
|
AS_VAR_IF([$1], [""], [$5], [$4])dnl
|
||||||
])dnl PKG_CHECK_VAR
|
])dnl PKG_CHECK_VAR
|
||||||
|
|
||||||
|
dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES,
|
||||||
|
dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND],
|
||||||
|
dnl [DESCRIPTION], [DEFAULT])
|
||||||
|
dnl ------------------------------------------
|
||||||
|
dnl
|
||||||
|
dnl Prepare a "--with-" configure option using the lowercase
|
||||||
|
dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and
|
||||||
|
dnl PKG_CHECK_MODULES in a single macro.
|
||||||
|
AC_DEFUN([PKG_WITH_MODULES],
|
||||||
|
[
|
||||||
|
m4_pushdef([with_arg], m4_tolower([$1]))
|
||||||
|
|
||||||
|
m4_pushdef([description],
|
||||||
|
[m4_default([$5], [build with ]with_arg[ support])])
|
||||||
|
|
||||||
|
m4_pushdef([def_arg], [m4_default([$6], [auto])])
|
||||||
|
m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes])
|
||||||
|
m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no])
|
||||||
|
|
||||||
|
m4_case(def_arg,
|
||||||
|
[yes],[m4_pushdef([with_without], [--without-]with_arg)],
|
||||||
|
[m4_pushdef([with_without],[--with-]with_arg)])
|
||||||
|
|
||||||
|
AC_ARG_WITH(with_arg,
|
||||||
|
AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),,
|
||||||
|
[AS_TR_SH([with_]with_arg)=def_arg])
|
||||||
|
|
||||||
|
AS_CASE([$AS_TR_SH([with_]with_arg)],
|
||||||
|
[yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)],
|
||||||
|
[auto],[PKG_CHECK_MODULES([$1],[$2],
|
||||||
|
[m4_n([def_action_if_found]) $3],
|
||||||
|
[m4_n([def_action_if_not_found]) $4])])
|
||||||
|
|
||||||
|
m4_popdef([with_arg])
|
||||||
|
m4_popdef([description])
|
||||||
|
m4_popdef([def_arg])
|
||||||
|
|
||||||
|
])dnl PKG_WITH_MODULES
|
||||||
|
|
||||||
|
dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
|
||||||
|
dnl [DESCRIPTION], [DEFAULT])
|
||||||
|
dnl -----------------------------------------------
|
||||||
|
dnl
|
||||||
|
dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES
|
||||||
|
dnl check._[VARIABLE-PREFIX] is exported as make variable.
|
||||||
|
AC_DEFUN([PKG_HAVE_WITH_MODULES],
|
||||||
|
[
|
||||||
|
PKG_WITH_MODULES([$1],[$2],,,[$3],[$4])
|
||||||
|
|
||||||
|
AM_CONDITIONAL([HAVE_][$1],
|
||||||
|
[test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"])
|
||||||
|
])dnl PKG_HAVE_WITH_MODULES
|
||||||
|
|
||||||
|
dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES,
|
||||||
|
dnl [DESCRIPTION], [DEFAULT])
|
||||||
|
dnl ------------------------------------------------------
|
||||||
|
dnl
|
||||||
|
dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after
|
||||||
|
dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make
|
||||||
|
dnl and preprocessor variable.
|
||||||
|
AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES],
|
||||||
|
[
|
||||||
|
PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4])
|
||||||
|
|
||||||
|
AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
|
||||||
|
[AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
|
||||||
|
])dnl PKG_HAVE_DEFINE_WITH_MODULES
|
||||||
|
|
||||||
# Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
# Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
|
|
317
configure
vendored
317
configure
vendored
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.71 for dnsjit 1.4.0.
|
# Generated by GNU Autoconf 2.71 for dnsjit 1.5.0.
|
||||||
#
|
#
|
||||||
# Report bugs to <admin@dns-oarc.net>.
|
# Report bugs to <admin@dns-oarc.net>.
|
||||||
#
|
#
|
||||||
|
@ -621,8 +621,8 @@ MAKEFLAGS=
|
||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='dnsjit'
|
PACKAGE_NAME='dnsjit'
|
||||||
PACKAGE_TARNAME='dnsjit'
|
PACKAGE_TARNAME='dnsjit'
|
||||||
PACKAGE_VERSION='1.4.0'
|
PACKAGE_VERSION='1.5.0'
|
||||||
PACKAGE_STRING='dnsjit 1.4.0'
|
PACKAGE_STRING='dnsjit 1.5.0'
|
||||||
PACKAGE_BUGREPORT='admin@dns-oarc.net'
|
PACKAGE_BUGREPORT='admin@dns-oarc.net'
|
||||||
PACKAGE_URL='https://github.com/DNS-OARC/dnsjit/issues'
|
PACKAGE_URL='https://github.com/DNS-OARC/dnsjit/issues'
|
||||||
|
|
||||||
|
@ -700,6 +700,7 @@ MANIFEST_TOOL
|
||||||
RANLIB
|
RANLIB
|
||||||
DLLTOOL
|
DLLTOOL
|
||||||
OBJDUMP
|
OBJDUMP
|
||||||
|
FILECMD
|
||||||
LN_S
|
LN_S
|
||||||
NM
|
NM
|
||||||
ac_ct_DUMPBIN
|
ac_ct_DUMPBIN
|
||||||
|
@ -1400,7 +1401,7 @@ if test "$ac_init_help" = "long"; then
|
||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# 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.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures dnsjit 1.4.0 to adapt to many kinds of systems.
|
\`configure' configures dnsjit 1.5.0 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
|
@ -1471,7 +1472,7 @@ fi
|
||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of dnsjit 1.4.0:";;
|
short | recursive ) echo "Configuration of dnsjit 1.5.0:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
|
@ -1618,7 +1619,7 @@ fi
|
||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
dnsjit configure 1.4.0
|
dnsjit configure 1.5.0
|
||||||
generated by GNU Autoconf 2.71
|
generated by GNU Autoconf 2.71
|
||||||
|
|
||||||
Copyright (C) 2021 Free Software Foundation, Inc.
|
Copyright (C) 2021 Free Software Foundation, Inc.
|
||||||
|
@ -2106,7 +2107,7 @@ cat >config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by dnsjit $as_me 1.4.0, which was
|
It was created by dnsjit $as_me 1.5.0, which was
|
||||||
generated by GNU Autoconf 2.71. Invocation command line was
|
generated by GNU Autoconf 2.71. Invocation command line was
|
||||||
|
|
||||||
$ $0$ac_configure_args_raw
|
$ $0$ac_configure_args_raw
|
||||||
|
@ -2866,7 +2867,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
printf "%s\n" "#define PACKAGE_MAJOR_VERSION 1" >>confdefs.h
|
printf "%s\n" "#define PACKAGE_MAJOR_VERSION 1" >>confdefs.h
|
||||||
|
|
||||||
|
|
||||||
printf "%s\n" "#define PACKAGE_MINOR_VERSION 4" >>confdefs.h
|
printf "%s\n" "#define PACKAGE_MINOR_VERSION 5" >>confdefs.h
|
||||||
|
|
||||||
|
|
||||||
printf "%s\n" "#define PACKAGE_PATCH_VERSION 0" >>confdefs.h
|
printf "%s\n" "#define PACKAGE_PATCH_VERSION 0" >>confdefs.h
|
||||||
|
@ -3385,7 +3386,7 @@ fi
|
||||||
|
|
||||||
# Define the identity of the package.
|
# Define the identity of the package.
|
||||||
PACKAGE='dnsjit'
|
PACKAGE='dnsjit'
|
||||||
VERSION='1.4.0'
|
VERSION='1.5.0'
|
||||||
|
|
||||||
|
|
||||||
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
||||||
|
@ -5012,8 +5013,8 @@ esac
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
macro_version='2.4.6'
|
macro_version='2.4.7'
|
||||||
macro_revision='2.4.6'
|
macro_revision='2.4.7'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -5566,13 +5567,13 @@ else
|
||||||
mingw*) lt_bad_file=conftest.nm/nofile ;;
|
mingw*) lt_bad_file=conftest.nm/nofile ;;
|
||||||
*) lt_bad_file=/dev/null ;;
|
*) lt_bad_file=/dev/null ;;
|
||||||
esac
|
esac
|
||||||
case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
|
case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in
|
||||||
*$lt_bad_file* | *'Invalid file or object type'*)
|
*$lt_bad_file* | *'Invalid file or object type'*)
|
||||||
lt_cv_path_NM="$tmp_nm -B"
|
lt_cv_path_NM="$tmp_nm -B"
|
||||||
break 2
|
break 2
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
|
case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in
|
||||||
*/dev/null*)
|
*/dev/null*)
|
||||||
lt_cv_path_NM="$tmp_nm -p"
|
lt_cv_path_NM="$tmp_nm -p"
|
||||||
break 2
|
break 2
|
||||||
|
@ -5710,7 +5711,7 @@ esac
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
|
case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in
|
||||||
*COFF*)
|
*COFF*)
|
||||||
DUMPBIN="$DUMPBIN -symbols -headers"
|
DUMPBIN="$DUMPBIN -symbols -headers"
|
||||||
;;
|
;;
|
||||||
|
@ -5814,7 +5815,7 @@ else $as_nop
|
||||||
lt_cv_sys_max_cmd_len=8192;
|
lt_cv_sys_max_cmd_len=8192;
|
||||||
;;
|
;;
|
||||||
|
|
||||||
bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
|
bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*)
|
||||||
# This has been around since 386BSD, at least. Likely further.
|
# This has been around since 386BSD, at least. Likely further.
|
||||||
if test -x /sbin/sysctl; then
|
if test -x /sbin/sysctl; then
|
||||||
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
|
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
|
||||||
|
@ -5857,7 +5858,7 @@ else $as_nop
|
||||||
sysv5* | sco5v6* | sysv4.2uw2*)
|
sysv5* | sco5v6* | sysv4.2uw2*)
|
||||||
kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
|
kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
|
||||||
if test -n "$kargmax"; then
|
if test -n "$kargmax"; then
|
||||||
lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
|
lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[ ]//'`
|
||||||
else
|
else
|
||||||
lt_cv_sys_max_cmd_len=32768
|
lt_cv_sys_max_cmd_len=32768
|
||||||
fi
|
fi
|
||||||
|
@ -6062,6 +6063,114 @@ esac
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if test -n "$ac_tool_prefix"; then
|
||||||
|
# Extract the first word of "${ac_tool_prefix}file", so it can be a program name with args.
|
||||||
|
set dummy ${ac_tool_prefix}file; ac_word=$2
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
printf %s "checking for $ac_word... " >&6; }
|
||||||
|
if test ${ac_cv_prog_FILECMD+y}
|
||||||
|
then :
|
||||||
|
printf %s "(cached) " >&6
|
||||||
|
else $as_nop
|
||||||
|
if test -n "$FILECMD"; then
|
||||||
|
ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
case $as_dir in #(((
|
||||||
|
'') as_dir=./ ;;
|
||||||
|
*/) ;;
|
||||||
|
*) as_dir=$as_dir/ ;;
|
||||||
|
esac
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_FILECMD="${ac_tool_prefix}file"
|
||||||
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
FILECMD=$ac_cv_prog_FILECMD
|
||||||
|
if test -n "$FILECMD"; then
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5
|
||||||
|
printf "%s\n" "$FILECMD" >&6; }
|
||||||
|
else
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
printf "%s\n" "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
if test -z "$ac_cv_prog_FILECMD"; then
|
||||||
|
ac_ct_FILECMD=$FILECMD
|
||||||
|
# Extract the first word of "file", so it can be a program name with args.
|
||||||
|
set dummy file; ac_word=$2
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
printf %s "checking for $ac_word... " >&6; }
|
||||||
|
if test ${ac_cv_prog_ac_ct_FILECMD+y}
|
||||||
|
then :
|
||||||
|
printf %s "(cached) " >&6
|
||||||
|
else $as_nop
|
||||||
|
if test -n "$ac_ct_FILECMD"; then
|
||||||
|
ac_cv_prog_ac_ct_FILECMD="$ac_ct_FILECMD" # Let the user override the test.
|
||||||
|
else
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
case $as_dir in #(((
|
||||||
|
'') as_dir=./ ;;
|
||||||
|
*/) ;;
|
||||||
|
*) as_dir=$as_dir/ ;;
|
||||||
|
esac
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_prog_ac_ct_FILECMD="file"
|
||||||
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
ac_ct_FILECMD=$ac_cv_prog_ac_ct_FILECMD
|
||||||
|
if test -n "$ac_ct_FILECMD"; then
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FILECMD" >&5
|
||||||
|
printf "%s\n" "$ac_ct_FILECMD" >&6; }
|
||||||
|
else
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
printf "%s\n" "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "x$ac_ct_FILECMD" = x; then
|
||||||
|
FILECMD=":"
|
||||||
|
else
|
||||||
|
case $cross_compiling:$ac_tool_warned in
|
||||||
|
yes:)
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
|
||||||
|
printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
|
||||||
|
ac_tool_warned=yes ;;
|
||||||
|
esac
|
||||||
|
FILECMD=$ac_ct_FILECMD
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
FILECMD="$ac_cv_prog_FILECMD"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if test -n "$ac_tool_prefix"; then
|
if test -n "$ac_tool_prefix"; then
|
||||||
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
|
# Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
|
||||||
set dummy ${ac_tool_prefix}objdump; ac_word=$2
|
set dummy ${ac_tool_prefix}objdump; ac_word=$2
|
||||||
|
@ -6205,7 +6314,7 @@ beos*)
|
||||||
|
|
||||||
bsdi[45]*)
|
bsdi[45]*)
|
||||||
lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
|
lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
|
||||||
lt_cv_file_magic_cmd='/usr/bin/file -L'
|
lt_cv_file_magic_cmd='$FILECMD -L'
|
||||||
lt_cv_file_magic_test_file=/shlib/libc.so
|
lt_cv_file_magic_test_file=/shlib/libc.so
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
@ -6239,14 +6348,14 @@ darwin* | rhapsody*)
|
||||||
lt_cv_deplibs_check_method=pass_all
|
lt_cv_deplibs_check_method=pass_all
|
||||||
;;
|
;;
|
||||||
|
|
||||||
freebsd* | dragonfly*)
|
freebsd* | dragonfly* | midnightbsd*)
|
||||||
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
|
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
|
||||||
case $host_cpu in
|
case $host_cpu in
|
||||||
i*86 )
|
i*86 )
|
||||||
# Not sure whether the presence of OpenBSD here was a mistake.
|
# Not sure whether the presence of OpenBSD here was a mistake.
|
||||||
# Let's accept both of them until this is cleared up.
|
# Let's accept both of them until this is cleared up.
|
||||||
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
|
lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
|
||||||
lt_cv_file_magic_cmd=/usr/bin/file
|
lt_cv_file_magic_cmd=$FILECMD
|
||||||
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
@ -6260,7 +6369,7 @@ haiku*)
|
||||||
;;
|
;;
|
||||||
|
|
||||||
hpux10.20* | hpux11*)
|
hpux10.20* | hpux11*)
|
||||||
lt_cv_file_magic_cmd=/usr/bin/file
|
lt_cv_file_magic_cmd=$FILECMD
|
||||||
case $host_cpu in
|
case $host_cpu in
|
||||||
ia64*)
|
ia64*)
|
||||||
lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
|
lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
|
||||||
|
@ -6307,7 +6416,7 @@ netbsd* | netbsdelf*-gnu)
|
||||||
|
|
||||||
newos6*)
|
newos6*)
|
||||||
lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
|
lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
|
||||||
lt_cv_file_magic_cmd=/usr/bin/file
|
lt_cv_file_magic_cmd=$FILECMD
|
||||||
lt_cv_file_magic_test_file=/usr/lib/libnls.so
|
lt_cv_file_magic_test_file=/usr/lib/libnls.so
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
@ -6680,13 +6789,29 @@ esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
: ${AR=ar}
|
: ${AR=ar}
|
||||||
: ${AR_FLAGS=cr}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Use ARFLAGS variable as AR's operation code to sync the variable naming with
|
||||||
|
# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have
|
||||||
|
# higher priority because thats what people were doing historically (setting
|
||||||
|
# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS
|
||||||
|
# variable obsoleted/removed.
|
||||||
|
|
||||||
|
test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr}
|
||||||
|
lt_ar_flags=$AR_FLAGS
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override
|
||||||
|
# by AR_FLAGS because that was never working and AR_FLAGS is about to die.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -7103,7 +7228,7 @@ esac
|
||||||
|
|
||||||
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
|
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
|
||||||
# Gets list of data symbols to import.
|
# Gets list of data symbols to import.
|
||||||
lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
|
lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'"
|
||||||
# Adjust the below global symbol transforms to fixup imported variables.
|
# Adjust the below global symbol transforms to fixup imported variables.
|
||||||
lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
|
lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
|
||||||
lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
|
lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
|
||||||
|
@ -7121,20 +7246,20 @@ fi
|
||||||
# Transform an extracted symbol line into a proper C declaration.
|
# Transform an extracted symbol line into a proper C declaration.
|
||||||
# Some systems (esp. on ia64) link data and code symbols differently,
|
# Some systems (esp. on ia64) link data and code symbols differently,
|
||||||
# so use this general approach.
|
# so use this general approach.
|
||||||
lt_cv_sys_global_symbol_to_cdecl="sed -n"\
|
lt_cv_sys_global_symbol_to_cdecl="$SED -n"\
|
||||||
$lt_cdecl_hook\
|
$lt_cdecl_hook\
|
||||||
" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
|
" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
|
||||||
" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
|
" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
|
||||||
|
|
||||||
# Transform an extracted symbol line into symbol name and symbol address
|
# Transform an extracted symbol line into symbol name and symbol address
|
||||||
lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
|
lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\
|
||||||
$lt_c_name_hook\
|
$lt_c_name_hook\
|
||||||
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
|
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
|
||||||
" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
|
" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
|
||||||
|
|
||||||
# Transform an extracted symbol line into symbol name with lib prefix and
|
# Transform an extracted symbol line into symbol name with lib prefix and
|
||||||
# symbol address.
|
# symbol address.
|
||||||
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
|
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\
|
||||||
$lt_c_name_lib_hook\
|
$lt_c_name_lib_hook\
|
||||||
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
|
" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
|
||||||
" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
|
" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
|
||||||
|
@ -7158,7 +7283,7 @@ for ac_symprfx in "" "_"; do
|
||||||
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
|
if test "$lt_cv_nm_interface" = "MS dumpbin"; then
|
||||||
# Fake it for dumpbin and say T for any non-static function,
|
# Fake it for dumpbin and say T for any non-static function,
|
||||||
# D for any global variable and I for any imported variable.
|
# D for any global variable and I for any imported variable.
|
||||||
# Also find C++ and __fastcall symbols from MSVC++,
|
# Also find C++ and __fastcall symbols from MSVC++ or ICC,
|
||||||
# which start with @ or ?.
|
# which start with @ or ?.
|
||||||
lt_cv_sys_global_symbol_pipe="$AWK '"\
|
lt_cv_sys_global_symbol_pipe="$AWK '"\
|
||||||
" {last_section=section; section=\$ 3};"\
|
" {last_section=section; section=\$ 3};"\
|
||||||
|
@ -7176,9 +7301,9 @@ for ac_symprfx in "" "_"; do
|
||||||
" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
|
" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
|
||||||
" ' prfx=^$ac_symprfx"
|
" ' prfx=^$ac_symprfx"
|
||||||
else
|
else
|
||||||
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
|
lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
|
||||||
fi
|
fi
|
||||||
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
|
lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'"
|
||||||
|
|
||||||
# Check to see that the pipe works correctly.
|
# Check to see that the pipe works correctly.
|
||||||
pipe_works=no
|
pipe_works=no
|
||||||
|
@ -7378,7 +7503,7 @@ case $with_sysroot in #(
|
||||||
fi
|
fi
|
||||||
;; #(
|
;; #(
|
||||||
/*)
|
/*)
|
||||||
lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
|
lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
|
||||||
;; #(
|
;; #(
|
||||||
no|'')
|
no|'')
|
||||||
;; #(
|
;; #(
|
||||||
|
@ -7503,7 +7628,7 @@ ia64-*-hpux*)
|
||||||
ac_status=$?
|
ac_status=$?
|
||||||
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
test $ac_status = 0; }; then
|
test $ac_status = 0; }; then
|
||||||
case `/usr/bin/file conftest.$ac_objext` in
|
case `$FILECMD conftest.$ac_objext` in
|
||||||
*ELF-32*)
|
*ELF-32*)
|
||||||
HPUX_IA64_MODE=32
|
HPUX_IA64_MODE=32
|
||||||
;;
|
;;
|
||||||
|
@ -7524,7 +7649,7 @@ ia64-*-hpux*)
|
||||||
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
test $ac_status = 0; }; then
|
test $ac_status = 0; }; then
|
||||||
if test yes = "$lt_cv_prog_gnu_ld"; then
|
if test yes = "$lt_cv_prog_gnu_ld"; then
|
||||||
case `/usr/bin/file conftest.$ac_objext` in
|
case `$FILECMD conftest.$ac_objext` in
|
||||||
*32-bit*)
|
*32-bit*)
|
||||||
LD="${LD-ld} -melf32bsmip"
|
LD="${LD-ld} -melf32bsmip"
|
||||||
;;
|
;;
|
||||||
|
@ -7536,7 +7661,7 @@ ia64-*-hpux*)
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
else
|
else
|
||||||
case `/usr/bin/file conftest.$ac_objext` in
|
case `$FILECMD conftest.$ac_objext` in
|
||||||
*32-bit*)
|
*32-bit*)
|
||||||
LD="${LD-ld} -32"
|
LD="${LD-ld} -32"
|
||||||
;;
|
;;
|
||||||
|
@ -7562,7 +7687,7 @@ mips64*-*linux*)
|
||||||
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
test $ac_status = 0; }; then
|
test $ac_status = 0; }; then
|
||||||
emul=elf
|
emul=elf
|
||||||
case `/usr/bin/file conftest.$ac_objext` in
|
case `$FILECMD conftest.$ac_objext` in
|
||||||
*32-bit*)
|
*32-bit*)
|
||||||
emul="${emul}32"
|
emul="${emul}32"
|
||||||
;;
|
;;
|
||||||
|
@ -7570,7 +7695,7 @@ mips64*-*linux*)
|
||||||
emul="${emul}64"
|
emul="${emul}64"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
case `/usr/bin/file conftest.$ac_objext` in
|
case `$FILECMD conftest.$ac_objext` in
|
||||||
*MSB*)
|
*MSB*)
|
||||||
emul="${emul}btsmip"
|
emul="${emul}btsmip"
|
||||||
;;
|
;;
|
||||||
|
@ -7578,7 +7703,7 @@ mips64*-*linux*)
|
||||||
emul="${emul}ltsmip"
|
emul="${emul}ltsmip"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
case `/usr/bin/file conftest.$ac_objext` in
|
case `$FILECMD conftest.$ac_objext` in
|
||||||
*N32*)
|
*N32*)
|
||||||
emul="${emul}n32"
|
emul="${emul}n32"
|
||||||
;;
|
;;
|
||||||
|
@ -7602,14 +7727,14 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
|
||||||
ac_status=$?
|
ac_status=$?
|
||||||
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
test $ac_status = 0; }; then
|
test $ac_status = 0; }; then
|
||||||
case `/usr/bin/file conftest.o` in
|
case `$FILECMD conftest.o` in
|
||||||
*32-bit*)
|
*32-bit*)
|
||||||
case $host in
|
case $host in
|
||||||
x86_64-*kfreebsd*-gnu)
|
x86_64-*kfreebsd*-gnu)
|
||||||
LD="${LD-ld} -m elf_i386_fbsd"
|
LD="${LD-ld} -m elf_i386_fbsd"
|
||||||
;;
|
;;
|
||||||
x86_64-*linux*)
|
x86_64-*linux*)
|
||||||
case `/usr/bin/file conftest.o` in
|
case `$FILECMD conftest.o` in
|
||||||
*x86-64*)
|
*x86-64*)
|
||||||
LD="${LD-ld} -m elf32_x86_64"
|
LD="${LD-ld} -m elf32_x86_64"
|
||||||
;;
|
;;
|
||||||
|
@ -7717,7 +7842,7 @@ printf "%s\n" "$lt_cv_cc_needs_belf" >&6; }
|
||||||
ac_status=$?
|
ac_status=$?
|
||||||
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
test $ac_status = 0; }; then
|
test $ac_status = 0; }; then
|
||||||
case `/usr/bin/file conftest.o` in
|
case `$FILECMD conftest.o` in
|
||||||
*64-bit*)
|
*64-bit*)
|
||||||
case $lt_cv_prog_gnu_ld in
|
case $lt_cv_prog_gnu_ld in
|
||||||
yes*)
|
yes*)
|
||||||
|
@ -8500,8 +8625,8 @@ int forced_loaded() { return 2;}
|
||||||
_LT_EOF
|
_LT_EOF
|
||||||
echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
|
echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
|
||||||
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
|
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
|
||||||
echo "$AR cr libconftest.a conftest.o" >&5
|
echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5
|
||||||
$AR cr libconftest.a conftest.o 2>&5
|
$AR $AR_FLAGS libconftest.a conftest.o 2>&5
|
||||||
echo "$RANLIB libconftest.a" >&5
|
echo "$RANLIB libconftest.a" >&5
|
||||||
$RANLIB libconftest.a 2>&5
|
$RANLIB libconftest.a 2>&5
|
||||||
cat > conftest.c << _LT_EOF
|
cat > conftest.c << _LT_EOF
|
||||||
|
@ -8528,16 +8653,11 @@ printf "%s\n" "$lt_cv_ld_force_load" >&6; }
|
||||||
_lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
|
_lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
|
||||||
darwin1.*)
|
darwin1.*)
|
||||||
_lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
|
_lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
|
||||||
darwin*) # darwin 5.x on
|
darwin*)
|
||||||
# if running on 10.5 or later, the deployment target defaults
|
case $MACOSX_DEPLOYMENT_TARGET,$host in
|
||||||
# to the OS version, if on x86, and 10.4, the deployment
|
10.[012],*|,*powerpc*-darwin[5-8]*)
|
||||||
# target defaults to 10.4. Don't you love it?
|
|
||||||
case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
|
|
||||||
10.0,*86*-darwin8*|10.0,*-darwin[912]*)
|
|
||||||
_lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
|
|
||||||
10.[012][,.]*)
|
|
||||||
_lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
|
_lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
|
||||||
10.*|11.*)
|
*)
|
||||||
_lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
|
_lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
@ -8925,8 +9045,8 @@ esac
|
||||||
ofile=libtool
|
ofile=libtool
|
||||||
can_build_shared=yes
|
can_build_shared=yes
|
||||||
|
|
||||||
# All known linkers require a '.a' archive for static linking (except MSVC,
|
# All known linkers require a '.a' archive for static linking (except MSVC and
|
||||||
# which needs '.lib').
|
# ICC, which need '.lib').
|
||||||
libext=a
|
libext=a
|
||||||
|
|
||||||
with_gnu_ld=$lt_cv_prog_gnu_ld
|
with_gnu_ld=$lt_cv_prog_gnu_ld
|
||||||
|
@ -9444,7 +9564,7 @@ lt_prog_compiler_static=
|
||||||
lt_prog_compiler_static='-qstaticlink'
|
lt_prog_compiler_static='-qstaticlink'
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
case `$CC -V 2>&1 | sed 5q` in
|
case `$CC -V 2>&1 | $SED 5q` in
|
||||||
*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
|
*Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
|
||||||
# Sun Fortran 8.3 passes all unrecognized flags to the linker
|
# Sun Fortran 8.3 passes all unrecognized flags to the linker
|
||||||
lt_prog_compiler_pic='-KPIC'
|
lt_prog_compiler_pic='-KPIC'
|
||||||
|
@ -9867,15 +9987,15 @@ printf %s "checking whether the $compiler linker ($LD) supports shared libraries
|
||||||
|
|
||||||
case $host_os in
|
case $host_os in
|
||||||
cygwin* | mingw* | pw32* | cegcc*)
|
cygwin* | mingw* | pw32* | cegcc*)
|
||||||
# FIXME: the MSVC++ port hasn't been tested in a loooong time
|
# FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time
|
||||||
# When not using gcc, we currently assume that we are using
|
# When not using gcc, we currently assume that we are using
|
||||||
# Microsoft Visual C++.
|
# Microsoft Visual C++ or Intel C++ Compiler.
|
||||||
if test yes != "$GCC"; then
|
if test yes != "$GCC"; then
|
||||||
with_gnu_ld=no
|
with_gnu_ld=no
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
interix*)
|
interix*)
|
||||||
# we just hope/assume this is gcc and not c89 (= MSVC++)
|
# we just hope/assume this is gcc and not c89 (= MSVC++ or ICC)
|
||||||
with_gnu_ld=yes
|
with_gnu_ld=yes
|
||||||
;;
|
;;
|
||||||
openbsd* | bitrig*)
|
openbsd* | bitrig*)
|
||||||
|
@ -9930,7 +10050,7 @@ printf %s "checking whether the $compiler linker ($LD) supports shared libraries
|
||||||
whole_archive_flag_spec=
|
whole_archive_flag_spec=
|
||||||
fi
|
fi
|
||||||
supports_anon_versioning=no
|
supports_anon_versioning=no
|
||||||
case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
|
case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
|
||||||
*GNU\ gold*) supports_anon_versioning=yes ;;
|
*GNU\ gold*) supports_anon_versioning=yes ;;
|
||||||
*\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
|
*\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
|
||||||
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
|
*\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
|
||||||
|
@ -10042,6 +10162,7 @@ _LT_EOF
|
||||||
emximp -o $lib $output_objdir/$libname.def'
|
emximp -o $lib $output_objdir/$libname.def'
|
||||||
old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
|
old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
|
||||||
enable_shared_with_static_runtimes=yes
|
enable_shared_with_static_runtimes=yes
|
||||||
|
file_list_spec='@'
|
||||||
;;
|
;;
|
||||||
|
|
||||||
interix[3-9]*)
|
interix[3-9]*)
|
||||||
|
@ -10056,7 +10177,7 @@ _LT_EOF
|
||||||
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
|
# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
|
||||||
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
|
# time. Moving up from 0x10000000 also allows more sbrk(2) space.
|
||||||
archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
|
archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
|
||||||
archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
|
archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
|
||||||
;;
|
;;
|
||||||
|
|
||||||
gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
|
gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
|
||||||
|
@ -10099,7 +10220,7 @@ _LT_EOF
|
||||||
compiler_needs_object=yes
|
compiler_needs_object=yes
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
case `$CC -V 2>&1 | sed 5q` in
|
case `$CC -V 2>&1 | $SED 5q` in
|
||||||
*Sun\ C*) # Sun C 5.9
|
*Sun\ C*) # Sun C 5.9
|
||||||
whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
|
whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
|
||||||
compiler_needs_object=yes
|
compiler_needs_object=yes
|
||||||
|
@ -10111,13 +10232,14 @@ _LT_EOF
|
||||||
|
|
||||||
if test yes = "$supports_anon_versioning"; then
|
if test yes = "$supports_anon_versioning"; then
|
||||||
archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
|
archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
|
||||||
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
|
cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
|
||||||
echo "local: *; };" >> $output_objdir/$libname.ver~
|
echo "local: *; };" >> $output_objdir/$libname.ver~
|
||||||
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
|
$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case $cc_basename in
|
case $cc_basename in
|
||||||
tcc*)
|
tcc*)
|
||||||
|
hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
|
||||||
export_dynamic_flag_spec='-rdynamic'
|
export_dynamic_flag_spec='-rdynamic'
|
||||||
;;
|
;;
|
||||||
xlf* | bgf* | bgxlf* | mpixlf*)
|
xlf* | bgf* | bgxlf* | mpixlf*)
|
||||||
|
@ -10127,7 +10249,7 @@ _LT_EOF
|
||||||
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
|
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
|
||||||
if test yes = "$supports_anon_versioning"; then
|
if test yes = "$supports_anon_versioning"; then
|
||||||
archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
|
archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
|
||||||
cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
|
cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
|
||||||
echo "local: *; };" >> $output_objdir/$libname.ver~
|
echo "local: *; };" >> $output_objdir/$libname.ver~
|
||||||
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
|
$LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
|
||||||
fi
|
fi
|
||||||
|
@ -10259,7 +10381,7 @@ _LT_EOF
|
||||||
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
|
if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
|
||||||
export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
|
export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
|
||||||
else
|
else
|
||||||
export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
|
export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
|
||||||
fi
|
fi
|
||||||
aix_use_runtimelinking=no
|
aix_use_runtimelinking=no
|
||||||
|
|
||||||
|
@ -10530,12 +10652,12 @@ fi
|
||||||
|
|
||||||
cygwin* | mingw* | pw32* | cegcc*)
|
cygwin* | mingw* | pw32* | cegcc*)
|
||||||
# When not using gcc, we currently assume that we are using
|
# When not using gcc, we currently assume that we are using
|
||||||
# Microsoft Visual C++.
|
# Microsoft Visual C++ or Intel C++ Compiler.
|
||||||
# hardcode_libdir_flag_spec is actually meaningless, as there is
|
# hardcode_libdir_flag_spec is actually meaningless, as there is
|
||||||
# no search path for DLLs.
|
# no search path for DLLs.
|
||||||
case $cc_basename in
|
case $cc_basename in
|
||||||
cl*)
|
cl* | icl*)
|
||||||
# Native MSVC
|
# Native MSVC or ICC
|
||||||
hardcode_libdir_flag_spec=' '
|
hardcode_libdir_flag_spec=' '
|
||||||
allow_undefined_flag=unsupported
|
allow_undefined_flag=unsupported
|
||||||
always_export_symbols=yes
|
always_export_symbols=yes
|
||||||
|
@ -10576,7 +10698,7 @@ fi
|
||||||
fi'
|
fi'
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
# Assume MSVC wrapper
|
# Assume MSVC and ICC wrapper
|
||||||
hardcode_libdir_flag_spec=' '
|
hardcode_libdir_flag_spec=' '
|
||||||
allow_undefined_flag=unsupported
|
allow_undefined_flag=unsupported
|
||||||
# Tell ltmain to make .lib files, not .a files.
|
# Tell ltmain to make .lib files, not .a files.
|
||||||
|
@ -10617,8 +10739,8 @@ fi
|
||||||
output_verbose_link_cmd=func_echo_all
|
output_verbose_link_cmd=func_echo_all
|
||||||
archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
|
archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
|
||||||
module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
|
module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
|
||||||
archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
|
archive_expsym_cmds="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
|
||||||
module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
|
module_expsym_cmds="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
|
||||||
|
|
||||||
else
|
else
|
||||||
ld_shlibs=no
|
ld_shlibs=no
|
||||||
|
@ -10652,7 +10774,7 @@ fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
|
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
|
||||||
freebsd* | dragonfly*)
|
freebsd* | dragonfly* | midnightbsd*)
|
||||||
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
|
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
|
||||||
hardcode_libdir_flag_spec='-R$libdir'
|
hardcode_libdir_flag_spec='-R$libdir'
|
||||||
hardcode_direct=yes
|
hardcode_direct=yes
|
||||||
|
@ -10833,6 +10955,7 @@ printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
|
||||||
# Fabrice Bellard et al's Tiny C Compiler
|
# Fabrice Bellard et al's Tiny C Compiler
|
||||||
ld_shlibs=yes
|
ld_shlibs=yes
|
||||||
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
|
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
|
||||||
|
hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
|
@ -10904,6 +11027,7 @@ printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
|
||||||
emximp -o $lib $output_objdir/$libname.def'
|
emximp -o $lib $output_objdir/$libname.def'
|
||||||
old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
|
old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
|
||||||
enable_shared_with_static_runtimes=yes
|
enable_shared_with_static_runtimes=yes
|
||||||
|
file_list_spec='@'
|
||||||
;;
|
;;
|
||||||
|
|
||||||
osf3*)
|
osf3*)
|
||||||
|
@ -11596,7 +11720,7 @@ cygwin* | mingw* | pw32* | cegcc*)
|
||||||
case $host_os in
|
case $host_os in
|
||||||
cygwin*)
|
cygwin*)
|
||||||
# Cygwin DLLs use 'cyg' prefix rather than 'lib'
|
# Cygwin DLLs use 'cyg' prefix rather than 'lib'
|
||||||
soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
|
soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
|
||||||
|
|
||||||
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
|
sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
|
||||||
;;
|
;;
|
||||||
|
@ -11606,14 +11730,14 @@ cygwin* | mingw* | pw32* | cegcc*)
|
||||||
;;
|
;;
|
||||||
pw32*)
|
pw32*)
|
||||||
# pw32 DLLs use 'pw' prefix rather than 'lib'
|
# pw32 DLLs use 'pw' prefix rather than 'lib'
|
||||||
library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
|
library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
dynamic_linker='Win32 ld.exe'
|
dynamic_linker='Win32 ld.exe'
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*,cl*)
|
*,cl* | *,icl*)
|
||||||
# Native MSVC
|
# Native MSVC or ICC
|
||||||
libname_spec='$name'
|
libname_spec='$name'
|
||||||
soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
|
soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
|
||||||
library_names_spec='$libname.dll.lib'
|
library_names_spec='$libname.dll.lib'
|
||||||
|
@ -11632,7 +11756,7 @@ cygwin* | mingw* | pw32* | cegcc*)
|
||||||
done
|
done
|
||||||
IFS=$lt_save_ifs
|
IFS=$lt_save_ifs
|
||||||
# Convert to MSYS style.
|
# Convert to MSYS style.
|
||||||
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
|
sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
|
||||||
;;
|
;;
|
||||||
cygwin*)
|
cygwin*)
|
||||||
# Convert to unix form, then to dos form, then back to unix form
|
# Convert to unix form, then to dos form, then back to unix form
|
||||||
|
@ -11669,7 +11793,7 @@ cygwin* | mingw* | pw32* | cegcc*)
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
# Assume MSVC wrapper
|
# Assume MSVC and ICC wrapper
|
||||||
library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
|
library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
|
||||||
dynamic_linker='Win32 ld.exe'
|
dynamic_linker='Win32 ld.exe'
|
||||||
;;
|
;;
|
||||||
|
@ -11702,7 +11826,7 @@ dgux*)
|
||||||
shlibpath_var=LD_LIBRARY_PATH
|
shlibpath_var=LD_LIBRARY_PATH
|
||||||
;;
|
;;
|
||||||
|
|
||||||
freebsd* | dragonfly*)
|
freebsd* | dragonfly* | midnightbsd*)
|
||||||
# DragonFly does not have aout. When/if they implement a new
|
# DragonFly does not have aout. When/if they implement a new
|
||||||
# versioning mechanism, adjust this.
|
# versioning mechanism, adjust this.
|
||||||
if test -x /usr/bin/objformat; then
|
if test -x /usr/bin/objformat; then
|
||||||
|
@ -12867,19 +12991,29 @@ striplib=
|
||||||
old_striplib=
|
old_striplib=
|
||||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
|
||||||
printf %s "checking whether stripping libraries is possible... " >&6; }
|
printf %s "checking whether stripping libraries is possible... " >&6; }
|
||||||
if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
|
if test -z "$STRIP"; then
|
||||||
test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
test -z "$striplib" && striplib="$STRIP --strip-unneeded"
|
printf "%s\n" "no" >&6; }
|
||||||
|
else
|
||||||
|
if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
|
||||||
|
old_striplib="$STRIP --strip-debug"
|
||||||
|
striplib="$STRIP --strip-unneeded"
|
||||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||||
printf "%s\n" "yes" >&6; }
|
printf "%s\n" "yes" >&6; }
|
||||||
else
|
else
|
||||||
# FIXME - insert some real tests, host_os isn't really good enough
|
|
||||||
case $host_os in
|
case $host_os in
|
||||||
darwin*)
|
darwin*)
|
||||||
if test -n "$STRIP"; then
|
# FIXME - insert some real tests, host_os isn't really good enough
|
||||||
striplib="$STRIP -x"
|
striplib="$STRIP -x"
|
||||||
old_striplib="$STRIP -S"
|
old_striplib="$STRIP -S"
|
||||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||||
|
printf "%s\n" "yes" >&6; }
|
||||||
|
;;
|
||||||
|
freebsd*)
|
||||||
|
if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then
|
||||||
|
old_striplib="$STRIP --strip-debug"
|
||||||
|
striplib="$STRIP --strip-unneeded"
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||||
printf "%s\n" "yes" >&6; }
|
printf "%s\n" "yes" >&6; }
|
||||||
else
|
else
|
||||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
@ -12891,6 +13025,7 @@ printf "%s\n" "no" >&6; }
|
||||||
printf "%s\n" "no" >&6; }
|
printf "%s\n" "no" >&6; }
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
@ -17171,7 +17306,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by dnsjit $as_me 1.4.0, which was
|
This file was extended by dnsjit $as_me 1.5.0, which was
|
||||||
generated by GNU Autoconf 2.71. Invocation command line was
|
generated by GNU Autoconf 2.71. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
|
@ -17240,7 +17375,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config='$ac_cs_config_escaped'
|
ac_cs_config='$ac_cs_config_escaped'
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
dnsjit config.status 1.4.0
|
dnsjit config.status 1.5.0
|
||||||
configured by $0, generated by GNU Autoconf 2.71,
|
configured by $0, generated by GNU Autoconf 2.71,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
@ -17403,6 +17538,7 @@ lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_q
|
||||||
lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
|
lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
|
||||||
reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
|
reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
|
||||||
reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
|
reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
|
||||||
|
FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`'
|
||||||
OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
|
OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
|
||||||
deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
|
deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
|
||||||
file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
|
file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
|
||||||
|
@ -17411,6 +17547,7 @@ want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
|
||||||
DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
|
DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
|
||||||
sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
|
sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
|
||||||
AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
|
AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
|
||||||
|
lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`'
|
||||||
AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
|
AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
|
||||||
archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
|
archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
|
||||||
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
|
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
|
||||||
|
@ -17531,6 +17668,7 @@ LN_S \
|
||||||
lt_SP2NL \
|
lt_SP2NL \
|
||||||
lt_NL2SP \
|
lt_NL2SP \
|
||||||
reload_flag \
|
reload_flag \
|
||||||
|
FILECMD \
|
||||||
OBJDUMP \
|
OBJDUMP \
|
||||||
deplibs_check_method \
|
deplibs_check_method \
|
||||||
file_magic_cmd \
|
file_magic_cmd \
|
||||||
|
@ -17539,7 +17677,6 @@ want_nocaseglob \
|
||||||
DLLTOOL \
|
DLLTOOL \
|
||||||
sharedlib_from_linklib_cmd \
|
sharedlib_from_linklib_cmd \
|
||||||
AR \
|
AR \
|
||||||
AR_FLAGS \
|
|
||||||
archiver_list_spec \
|
archiver_list_spec \
|
||||||
STRIP \
|
STRIP \
|
||||||
RANLIB \
|
RANLIB \
|
||||||
|
@ -18484,6 +18621,9 @@ to_host_file_cmd=$lt_cv_to_host_file_cmd
|
||||||
# convert \$build files to toolchain format.
|
# convert \$build files to toolchain format.
|
||||||
to_tool_file_cmd=$lt_cv_to_tool_file_cmd
|
to_tool_file_cmd=$lt_cv_to_tool_file_cmd
|
||||||
|
|
||||||
|
# A file(cmd) program that detects file types.
|
||||||
|
FILECMD=$lt_FILECMD
|
||||||
|
|
||||||
# An object symbol dumper.
|
# An object symbol dumper.
|
||||||
OBJDUMP=$lt_OBJDUMP
|
OBJDUMP=$lt_OBJDUMP
|
||||||
|
|
||||||
|
@ -18508,8 +18648,11 @@ sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
|
||||||
# The archiver.
|
# The archiver.
|
||||||
AR=$lt_AR
|
AR=$lt_AR
|
||||||
|
|
||||||
|
# Flags to create an archive (by configure).
|
||||||
|
lt_ar_flags=$lt_ar_flags
|
||||||
|
|
||||||
# Flags to create an archive.
|
# Flags to create an archive.
|
||||||
AR_FLAGS=$lt_AR_FLAGS
|
AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"}
|
||||||
|
|
||||||
# How to feed a file listing to the archiver.
|
# How to feed a file listing to the archiver.
|
||||||
archiver_list_spec=$lt_archiver_list_spec
|
archiver_list_spec=$lt_archiver_list_spec
|
||||||
|
@ -18885,7 +19028,7 @@ ltmain=$ac_aux_dir/ltmain.sh
|
||||||
# if finds mixed CR/LF and LF-only lines. Since sed operates in
|
# if finds mixed CR/LF and LF-only lines. Since sed operates in
|
||||||
# text mode, it properly converts lines to CR/LF. This bash problem
|
# text mode, it properly converts lines to CR/LF. This bash problem
|
||||||
# is reportedly fixed, but why not run on old versions too?
|
# is reportedly fixed, but why not run on old versions too?
|
||||||
sed '$q' "$ltmain" >> "$cfgfile" \
|
$SED '$q' "$ltmain" >> "$cfgfile" \
|
||||||
|| (rm -f "$cfgfile"; exit 1)
|
|| (rm -f "$cfgfile"; exit 1)
|
||||||
|
|
||||||
mv -f "$cfgfile" "$ofile" ||
|
mv -f "$cfgfile" "$ofile" ||
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
@ -17,9 +17,9 @@
|
||||||
# along with dnsjit. If not, see <http://www.gnu.org/licenses/>.
|
# along with dnsjit. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
AC_PREREQ(2.64)
|
AC_PREREQ(2.64)
|
||||||
AC_INIT([dnsjit], [1.4.0], [admin@dns-oarc.net], [dnsjit], [https://github.com/DNS-OARC/dnsjit/issues])
|
AC_INIT([dnsjit], [1.5.0], [admin@dns-oarc.net], [dnsjit], [https://github.com/DNS-OARC/dnsjit/issues])
|
||||||
AC_DEFINE([PACKAGE_MAJOR_VERSION], [1], [Define to the major version of this package.])
|
AC_DEFINE([PACKAGE_MAJOR_VERSION], [1], [Define to the major version of this package.])
|
||||||
AC_DEFINE([PACKAGE_MINOR_VERSION], [4], [Define to the minor version of this package.])
|
AC_DEFINE([PACKAGE_MINOR_VERSION], [5], [Define to the minor version of this package.])
|
||||||
AC_DEFINE([PACKAGE_PATCH_VERSION], [0], [Define to the patch version of this package.])
|
AC_DEFINE([PACKAGE_PATCH_VERSION], [0], [Define to the patch version of this package.])
|
||||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
|
AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects])
|
||||||
AC_CONFIG_SRCDIR([src/dnsjit.c])
|
AC_CONFIG_SRCDIR([src/dnsjit.c])
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
@ -209,6 +209,7 @@ EGREP = @EGREP@
|
||||||
ETAGS = @ETAGS@
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
|
|
@ -3,18 +3,20 @@
|
||||||
|
|
||||||
-- Convert PCAP with IPv[46] & UDP payloads into TCP-stream binary format as
|
-- Convert PCAP with IPv[46] & UDP payloads into TCP-stream binary format as
|
||||||
-- specified by RFC 1035 section "4.2.2. TCP usage". Each packet is preceded by
|
-- specified by RFC 1035 section "4.2.2. TCP usage". Each packet is preceded by
|
||||||
-- 2-byte pre‐ambule which specifies length of the following DNS packet in
|
-- 2-byte pre‐ambule which specifies length of the following DNS message in
|
||||||
-- network byte order, immediately followed by raw bytes of the packet.
|
-- network byte order, immediately followed by raw bytes of the DNS message.
|
||||||
|
--
|
||||||
|
-- Outputs raw binary to stdout!
|
||||||
--
|
--
|
||||||
-- This script does not do any filtering or input sanitation.
|
-- This script does not do any filtering or input sanitation.
|
||||||
-- Outputs raw binary to stdout!
|
-- For filtering capabilities look at dnscap -o dump_format=tcpdns
|
||||||
|
|
||||||
local bit = require("bit")
|
local bit = require("bit")
|
||||||
local ffi = require("ffi")
|
local ffi = require("ffi")
|
||||||
local input = require("dnsjit.input.pcap").new()
|
local input = require("dnsjit.input.pcap").new()
|
||||||
local layer = require("dnsjit.filter.layer").new()
|
local layer = require("dnsjit.filter.layer").new()
|
||||||
local object = require("dnsjit.core.objects")
|
local object = require("dnsjit.core.objects")
|
||||||
local log = require("dnsjit.core.log").new("extract-clients.lua")
|
local log = require("dnsjit.core.log").new("pcap2tcpdns")
|
||||||
local getopt = require("dnsjit.lib.getopt").new({
|
local getopt = require("dnsjit.lib.getopt").new({
|
||||||
{ "r", "read", "-", "input file to read, use - for stdin", "?" },
|
{ "r", "read", "-", "input file to read, use - for stdin", "?" },
|
||||||
})
|
})
|
||||||
|
@ -54,27 +56,23 @@ local produce, pctx = layer:produce()
|
||||||
-- set up output
|
-- set up output
|
||||||
io.stdout:setvbuf("full")
|
io.stdout:setvbuf("full")
|
||||||
|
|
||||||
local obj, obj_pcap_in, obj_ip, obj_udp, obj_pl
|
local obj, obj_udp, obj_pl
|
||||||
local npacketsin = 0
|
local npacketsout = 0
|
||||||
|
local npacketsskip = 0
|
||||||
|
local UDP_ID = object.UDP
|
||||||
while true do
|
while true do
|
||||||
obj = produce(pctx)
|
obj = produce(pctx)
|
||||||
if obj == nil then break end
|
if obj == nil then break end
|
||||||
npacketsin = npacketsin + 1
|
|
||||||
|
|
||||||
obj_ip = obj:cast_to(object.IP)
|
|
||||||
if obj_ip == nil then
|
|
||||||
obj_ip = obj:cast_to(object.IP6)
|
|
||||||
end
|
|
||||||
|
|
||||||
obj_udp = obj:cast_to(object.UDP)
|
|
||||||
obj_pl = obj:cast_to(object.PAYLOAD)
|
obj_pl = obj:cast_to(object.PAYLOAD)
|
||||||
obj_pcap_in = obj:cast_to(object.PCAP)
|
if obj_pl ~= nil and obj_pl.len <= 65535 and obj_pl:prev().obj_type == UDP_ID then
|
||||||
if obj_ip ~= nil and obj_udp ~= nil and obj_pl ~= nil and obj_pcap_in ~= nil then
|
|
||||||
-- UDP header length is 8 bytes and is included in the ulen field below.
|
|
||||||
-- RFC 1035 framing has just the DNS message size as two bytes (big-endian).
|
-- RFC 1035 framing has just the DNS message size as two bytes (big-endian).
|
||||||
put_uint16_be(tmpbuf, 0, obj_udp.ulen - 8)
|
put_uint16_be(tmpbuf, 0, obj_pl.len)
|
||||||
io.stdout:write(ffi.string(tmpbuf, 2))
|
io.stdout:write(ffi.string(tmpbuf, 2))
|
||||||
io.stdout:write(ffi.string(obj_pl.payload, obj_pl.len))
|
io.stdout:write(ffi.string(obj_pl.payload, obj_pl.len))
|
||||||
|
npacketsout = npacketsout + 1
|
||||||
|
else
|
||||||
|
npacketsskip = npacketsskip + 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
log:info(string.format("processed %d packets", npacketsin))
|
log:info(string.format("%d packets copied, %d skipped", npacketsout, npacketsskip))
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
@ -48,16 +48,16 @@ dnsjit_LDADD = $(PTHREAD_LIBS) $(luajit_LIBS) $(liblz4_LIBS) $(libzstd_LIBS) \
|
||||||
$(libpcap_LIBS) $(gnutls_LIBS) $(liblzma_LIBS)
|
$(libpcap_LIBS) $(gnutls_LIBS) $(liblzma_LIBS)
|
||||||
|
|
||||||
# C source and headers
|
# C source and headers
|
||||||
dnsjit_SOURCES += core/channel.c core/compat.c core/file.c core/log.c core/object.c core/object/dns.c core/object/ether.c core/object/gre.c core/object/icmp6.c core/object/icmp.c core/object/ieee802.c core/object/ip6.c core/object/ip.c core/object/linuxsll.c core/object/loop.c core/object/null.c core/object/payload.c core/object/pcap.c core/object/tcp.c core/object/udp.c core/producer.c core/receiver.c core/thread.c filter/copy.c filter/ipsplit.c filter/layer.c filter/split.c filter/timing.c input/fpcap.c input/mmpcap.c input/pcap.c input/zmmpcap.c input/zpcap.c lib/base64url.c lib/clock.c lib/trie.c output/dnscli.c output/pcap.c output/respdiff.c output/tcpcli.c output/tlscli.c output/udpcli.c
|
dnsjit_SOURCES += core/channel.c core/compat.c core/file.c core/log.c core/object.c core/object/dns.c core/object/ether.c core/object/gre.c core/object/icmp6.c core/object/icmp.c core/object/ieee802.c core/object/ip6.c core/object/ip.c core/object/linuxsll2.c core/object/linuxsll.c core/object/loop.c core/object/null.c core/object/payload.c core/object/pcap.c core/object/tcp.c core/object/udp.c core/producer.c core/receiver.c core/thread.c filter/copy.c filter/ipsplit.c filter/layer.c filter/split.c filter/timing.c input/fpcap.c input/mmpcap.c input/pcap.c input/zmmpcap.c input/zpcap.c lib/base64url.c lib/clock.c lib/trie.c output/dnscli.c output/pcap.c output/respdiff.c output/tcpcli.c output/tlscli.c output/udpcli.c
|
||||||
nobase_dnsjitinclude_HEADERS += core/assert.h core/channel.h core/compat.h core/file.h core/log.h core/object/dns.h core/object/ether.h core/object/gre.h core/object.h core/object/icmp6.h core/object/icmp.h core/object/ieee802.h core/object/ip6.h core/object/ip.h core/object/linuxsll.h core/object/loop.h core/object/null.h core/object/payload.h core/object/pcap.h core/object/tcp.h core/object/udp.h core/producer.h core/receiver.h core/thread.h core/timespec.h filter/copy.h filter/ipsplit.h filter/layer.h filter/split.h filter/timing.h input/fpcap.h input/mmpcap.h input/pcap.h input/zmmpcap.h input/zpcap.h lib/base64url.h lib/clock.h lib/trie.h output/dnscli.h output/pcap.h output/respdiff.h output/tcpcli.h output/tlscli.h output/udpcli.h
|
nobase_dnsjitinclude_HEADERS += core/assert.h core/channel.h core/compat.h core/file.h core/log.h core/object/dns.h core/object/ether.h core/object/gre.h core/object.h core/object/icmp6.h core/object/icmp.h core/object/ieee802.h core/object/ip6.h core/object/ip.h core/object/linuxsll2.h core/object/linuxsll.h core/object/loop.h core/object/null.h core/object/payload.h core/object/pcap.h core/object/tcp.h core/object/udp.h core/producer.h core/receiver.h core/thread.h core/timespec.h filter/copy.h filter/ipsplit.h filter/layer.h filter/split.h filter/timing.h input/fpcap.h input/mmpcap.h input/pcap.h input/zmmpcap.h input/zpcap.h lib/base64url.h lib/clock.h lib/trie.h output/dnscli.h output/pcap.h output/respdiff.h output/tcpcli.h output/tlscli.h output/udpcli.h
|
||||||
|
|
||||||
# Lua headers
|
# Lua headers
|
||||||
nobase_dnsjitinclude_HEADERS += core/channel.hh core/file.hh core/log.hh core/object/dns.hh core/object/ether.hh core/object/gre.hh core/object.hh core/object/icmp6.hh core/object/icmp.hh core/object/ieee802.hh core/object/ip6.hh core/object/ip.hh core/object/linuxsll.hh core/object/loop.hh core/object/null.hh core/object/payload.hh core/object/pcap.hh core/object/tcp.hh core/object/udp.hh core/producer.hh core/receiver.hh core/thread.hh core/timespec.hh filter/copy.hh filter/ipsplit.hh filter/layer.hh filter/split.hh filter/timing.hh input/fpcap.hh input/mmpcap.hh input/pcap.hh input/zmmpcap.hh input/zpcap.hh lib/base64url.hh lib/clock.hh lib/trie.hh output/dnscli.hh output/pcap.hh output/respdiff.hh output/tcpcli.hh output/tlscli.hh output/udpcli.hh
|
nobase_dnsjitinclude_HEADERS += core/channel.hh core/file.hh core/log.hh core/object/dns.hh core/object/ether.hh core/object/gre.hh core/object.hh core/object/icmp6.hh core/object/icmp.hh core/object/ieee802.hh core/object/ip6.hh core/object/ip.hh core/object/linuxsll2.hh core/object/linuxsll.hh core/object/loop.hh core/object/null.hh core/object/payload.hh core/object/pcap.hh core/object/tcp.hh core/object/udp.hh core/producer.hh core/receiver.hh core/thread.hh core/timespec.hh filter/copy.hh filter/ipsplit.hh filter/layer.hh filter/split.hh filter/timing.hh input/fpcap.hh input/mmpcap.hh input/pcap.hh input/zmmpcap.hh input/zpcap.hh lib/base64url.hh lib/clock.hh lib/trie.hh output/dnscli.hh output/pcap.hh output/respdiff.hh output/tcpcli.hh output/tlscli.hh output/udpcli.hh
|
||||||
lua_hobjects += core/channel.luaho core/file.luaho core/log.luaho core/object/dns.luaho core/object/ether.luaho core/object/gre.luaho core/object/icmp6.luaho core/object/icmp.luaho core/object/ieee802.luaho core/object/ip6.luaho core/object/ip.luaho core/object/linuxsll.luaho core/object/loop.luaho core/object.luaho core/object/null.luaho core/object/payload.luaho core/object/pcap.luaho core/object/tcp.luaho core/object/udp.luaho core/producer.luaho core/receiver.luaho core/thread.luaho core/timespec.luaho filter/copy.luaho filter/ipsplit.luaho filter/layer.luaho filter/split.luaho filter/timing.luaho input/fpcap.luaho input/mmpcap.luaho input/pcap.luaho input/zmmpcap.luaho input/zpcap.luaho lib/base64url.luaho lib/clock.luaho lib/trie.luaho output/dnscli.luaho output/pcap.luaho output/respdiff.luaho output/tcpcli.luaho output/tlscli.luaho output/udpcli.luaho
|
lua_hobjects += core/channel.luaho core/file.luaho core/log.luaho core/object/dns.luaho core/object/ether.luaho core/object/gre.luaho core/object/icmp6.luaho core/object/icmp.luaho core/object/ieee802.luaho core/object/ip6.luaho core/object/ip.luaho core/object/linuxsll2.luaho core/object/linuxsll.luaho core/object/loop.luaho core/object.luaho core/object/null.luaho core/object/payload.luaho core/object/pcap.luaho core/object/tcp.luaho core/object/udp.luaho core/producer.luaho core/receiver.luaho core/thread.luaho core/timespec.luaho filter/copy.luaho filter/ipsplit.luaho filter/layer.luaho filter/split.luaho filter/timing.luaho input/fpcap.luaho input/mmpcap.luaho input/pcap.luaho input/zmmpcap.luaho input/zpcap.luaho lib/base64url.luaho lib/clock.luaho lib/trie.luaho output/dnscli.luaho output/pcap.luaho output/respdiff.luaho output/tcpcli.luaho output/tlscli.luaho output/udpcli.luaho
|
||||||
|
|
||||||
# Lua sources
|
# Lua sources
|
||||||
dist_dnsjit_SOURCES += core/channel.lua core/compat.lua core/file.lua core/loader.lua core/log.lua core/object/dns/label.lua core/object/dns.lua core/object/dns/q.lua core/object/dns/rr.lua core/object/ether.lua core/object/gre.lua core/object/icmp6.lua core/object/icmp.lua core/object/ieee802.lua core/object/ip6.lua core/object/ip.lua core/object/linuxsll.lua core/object/loop.lua core/object.lua core/object/null.lua core/object/payload.lua core/object/pcap.lua core/objects.lua core/object/tcp.lua core/object/udp.lua core/producer.lua core/receiver.lua core/thread.lua core/timespec.lua filter/copy.lua filter/ipsplit.lua filter/layer.lua filter/split.lua filter/timing.lua input/fpcap.lua input/mmpcap.lua input/pcap.lua input/zero.lua input/zmmpcap.lua input/zpcap.lua lib/base64url.lua lib/clock.lua lib/getopt.lua lib/ip.lua lib/parseconf.lua lib/trie/iter.lua lib/trie.lua lib/trie/node.lua output/dnscli.lua output/null.lua output/pcap.lua output/respdiff.lua output/tcpcli.lua output/tlscli.lua output/udpcli.lua
|
dist_dnsjit_SOURCES += core/channel.lua core/compat.lua core/file.lua core/loader.lua core/log.lua core/object/dns/label.lua core/object/dns.lua core/object/dns/q.lua core/object/dns/rr.lua core/object/ether.lua core/object/gre.lua core/object/icmp6.lua core/object/icmp.lua core/object/ieee802.lua core/object/ip6.lua core/object/ip.lua core/object/linuxsll2.lua core/object/linuxsll.lua core/object/loop.lua core/object.lua core/object/null.lua core/object/payload.lua core/object/pcap.lua core/objects.lua core/object/tcp.lua core/object/udp.lua core/producer.lua core/receiver.lua core/thread.lua core/timespec.lua filter/copy.lua filter/ipsplit.lua filter/layer.lua filter/split.lua filter/timing.lua input/fpcap.lua input/mmpcap.lua input/pcap.lua input/zero.lua input/zmmpcap.lua input/zpcap.lua lib/base64url.lua lib/clock.lua lib/getopt.lua lib/ip.lua lib/parseconf.lua lib/trie/iter.lua lib/trie.lua lib/trie/node.lua output/dnscli.lua output/null.lua output/pcap.lua output/respdiff.lua output/tcpcli.lua output/tlscli.lua output/udpcli.lua
|
||||||
lua_objects += core/channel.luao core/compat.luao core/file.luao core/loader.luao core/log.luao core/object/dns/label.luao core/object/dns.luao core/object/dns/q.luao core/object/dns/rr.luao core/object/ether.luao core/object/gre.luao core/object/icmp6.luao core/object/icmp.luao core/object/ieee802.luao core/object/ip6.luao core/object/ip.luao core/object/linuxsll.luao core/object/loop.luao core/object.luao core/object/null.luao core/object/payload.luao core/object/pcap.luao core/objects.luao core/object/tcp.luao core/object/udp.luao core/producer.luao core/receiver.luao core/thread.luao core/timespec.luao filter/copy.luao filter/ipsplit.luao filter/layer.luao filter/split.luao filter/timing.luao input/fpcap.luao input/mmpcap.luao input/pcap.luao input/zero.luao input/zmmpcap.luao input/zpcap.luao lib/base64url.luao lib/clock.luao lib/getopt.luao lib/ip.luao lib/parseconf.luao lib/trie/iter.luao lib/trie.luao lib/trie/node.luao output/dnscli.luao output/null.luao output/pcap.luao output/respdiff.luao output/tcpcli.luao output/tlscli.luao output/udpcli.luao
|
lua_objects += core/channel.luao core/compat.luao core/file.luao core/loader.luao core/log.luao core/object/dns/label.luao core/object/dns.luao core/object/dns/q.luao core/object/dns/rr.luao core/object/ether.luao core/object/gre.luao core/object/icmp6.luao core/object/icmp.luao core/object/ieee802.luao core/object/ip6.luao core/object/ip.luao core/object/linuxsll2.luao core/object/linuxsll.luao core/object/loop.luao core/object.luao core/object/null.luao core/object/payload.luao core/object/pcap.luao core/objects.luao core/object/tcp.luao core/object/udp.luao core/producer.luao core/receiver.luao core/thread.luao core/timespec.luao filter/copy.luao filter/ipsplit.luao filter/layer.luao filter/split.luao filter/timing.luao input/fpcap.luao input/mmpcap.luao input/pcap.luao input/zero.luao input/zmmpcap.luao input/zpcap.luao lib/base64url.luao lib/clock.luao lib/getopt.luao lib/ip.luao lib/parseconf.luao lib/trie/iter.luao lib/trie.luao lib/trie/node.luao output/dnscli.luao output/null.luao output/pcap.luao output/respdiff.luao output/tcpcli.luao output/tlscli.luao output/udpcli.luao
|
||||||
|
|
||||||
dnsjit_LDFLAGS = -Wl,-E
|
dnsjit_LDFLAGS = -Wl,-E
|
||||||
dnsjit_LDADD += $(lua_hobjects) $(lua_objects)
|
dnsjit_LDADD += $(lua_hobjects) $(lua_objects)
|
||||||
|
@ -67,7 +67,7 @@ man1_MANS = dnsjit.1
|
||||||
CLEANFILES += $(man1_MANS)
|
CLEANFILES += $(man1_MANS)
|
||||||
|
|
||||||
man3_MANS = dnsjit.core.3 dnsjit.lib.3 dnsjit.input.3 dnsjit.filter.3 dnsjit.output.3
|
man3_MANS = dnsjit.core.3 dnsjit.lib.3 dnsjit.input.3 dnsjit.filter.3 dnsjit.output.3
|
||||||
man3_MANS += dnsjit.core.channel.3 dnsjit.core.compat.3 dnsjit.core.file.3 dnsjit.core.loader.3 dnsjit.core.log.3 dnsjit.core.object.3 dnsjit.core.object.dns.3 dnsjit.core.object.dns.label.3 dnsjit.core.object.dns.q.3 dnsjit.core.object.dns.rr.3 dnsjit.core.object.ether.3 dnsjit.core.object.gre.3 dnsjit.core.object.icmp.3 dnsjit.core.object.icmp6.3 dnsjit.core.object.ieee802.3 dnsjit.core.object.ip.3 dnsjit.core.object.ip6.3 dnsjit.core.object.linuxsll.3 dnsjit.core.object.loop.3 dnsjit.core.object.null.3 dnsjit.core.object.payload.3 dnsjit.core.object.pcap.3 dnsjit.core.objects.3 dnsjit.core.object.tcp.3 dnsjit.core.object.udp.3 dnsjit.core.producer.3 dnsjit.core.receiver.3 dnsjit.core.thread.3 dnsjit.core.timespec.3 dnsjit.filter.copy.3 dnsjit.filter.ipsplit.3 dnsjit.filter.layer.3 dnsjit.filter.split.3 dnsjit.filter.timing.3 dnsjit.input.fpcap.3 dnsjit.input.mmpcap.3 dnsjit.input.pcap.3 dnsjit.input.zero.3 dnsjit.input.zmmpcap.3 dnsjit.input.zpcap.3 dnsjit.lib.base64url.3 dnsjit.lib.clock.3 dnsjit.lib.getopt.3 dnsjit.lib.ip.3 dnsjit.lib.parseconf.3 dnsjit.lib.trie.3 dnsjit.lib.trie.iter.3 dnsjit.lib.trie.node.3 dnsjit.output.dnscli.3 dnsjit.output.null.3 dnsjit.output.pcap.3 dnsjit.output.respdiff.3 dnsjit.output.tcpcli.3 dnsjit.output.tlscli.3 dnsjit.output.udpcli.3
|
man3_MANS += dnsjit.core.channel.3 dnsjit.core.compat.3 dnsjit.core.file.3 dnsjit.core.loader.3 dnsjit.core.log.3 dnsjit.core.object.3 dnsjit.core.object.dns.3 dnsjit.core.object.dns.label.3 dnsjit.core.object.dns.q.3 dnsjit.core.object.dns.rr.3 dnsjit.core.object.ether.3 dnsjit.core.object.gre.3 dnsjit.core.object.icmp.3 dnsjit.core.object.icmp6.3 dnsjit.core.object.ieee802.3 dnsjit.core.object.ip.3 dnsjit.core.object.ip6.3 dnsjit.core.object.linuxsll2.3 dnsjit.core.object.linuxsll.3 dnsjit.core.object.loop.3 dnsjit.core.object.null.3 dnsjit.core.object.payload.3 dnsjit.core.object.pcap.3 dnsjit.core.objects.3 dnsjit.core.object.tcp.3 dnsjit.core.object.udp.3 dnsjit.core.producer.3 dnsjit.core.receiver.3 dnsjit.core.thread.3 dnsjit.core.timespec.3 dnsjit.filter.copy.3 dnsjit.filter.ipsplit.3 dnsjit.filter.layer.3 dnsjit.filter.split.3 dnsjit.filter.timing.3 dnsjit.input.fpcap.3 dnsjit.input.mmpcap.3 dnsjit.input.pcap.3 dnsjit.input.zero.3 dnsjit.input.zmmpcap.3 dnsjit.input.zpcap.3 dnsjit.lib.base64url.3 dnsjit.lib.clock.3 dnsjit.lib.getopt.3 dnsjit.lib.ip.3 dnsjit.lib.parseconf.3 dnsjit.lib.trie.3 dnsjit.lib.trie.iter.3 dnsjit.lib.trie.node.3 dnsjit.output.dnscli.3 dnsjit.output.null.3 dnsjit.output.pcap.3 dnsjit.output.respdiff.3 dnsjit.output.tcpcli.3 dnsjit.output.tlscli.3 dnsjit.output.udpcli.3
|
||||||
CLEANFILES += *.3in $(man3_MANS)
|
CLEANFILES += *.3in $(man3_MANS)
|
||||||
|
|
||||||
.lua.luao:
|
.lua.luao:
|
||||||
|
@ -175,6 +175,9 @@ dnsjit.core.object.ip6.3in: core/object/ip6.lua gen-manpage.lua
|
||||||
dnsjit.core.object.ip.3in: core/object/ip.lua gen-manpage.lua
|
dnsjit.core.object.ip.3in: core/object/ip.lua gen-manpage.lua
|
||||||
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/ip.lua" > "$@"
|
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/ip.lua" > "$@"
|
||||||
|
|
||||||
|
dnsjit.core.object.linuxsll2.3in: core/object/linuxsll2.lua gen-manpage.lua
|
||||||
|
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/linuxsll2.lua" > "$@"
|
||||||
|
|
||||||
dnsjit.core.object.linuxsll.3in: core/object/linuxsll.lua gen-manpage.lua
|
dnsjit.core.object.linuxsll.3in: core/object/linuxsll.lua gen-manpage.lua
|
||||||
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/linuxsll.lua" > "$@"
|
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/linuxsll.lua" > "$@"
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
@SET_MAKE@
|
@SET_MAKE@
|
||||||
|
|
||||||
# Copyright (c) 2018-2024 OARC, Inc.
|
# Copyright (c) 2018-2025 OARC, Inc.
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# This file is part of dnsjit.
|
# This file is part of dnsjit.
|
||||||
|
@ -141,20 +141,21 @@ am_dnsjit_OBJECTS = dnsjit.$(OBJEXT) globals.$(OBJEXT) \
|
||||||
core/object/gre.$(OBJEXT) core/object/icmp6.$(OBJEXT) \
|
core/object/gre.$(OBJEXT) core/object/icmp6.$(OBJEXT) \
|
||||||
core/object/icmp.$(OBJEXT) core/object/ieee802.$(OBJEXT) \
|
core/object/icmp.$(OBJEXT) core/object/ieee802.$(OBJEXT) \
|
||||||
core/object/ip6.$(OBJEXT) core/object/ip.$(OBJEXT) \
|
core/object/ip6.$(OBJEXT) core/object/ip.$(OBJEXT) \
|
||||||
core/object/linuxsll.$(OBJEXT) core/object/loop.$(OBJEXT) \
|
core/object/linuxsll2.$(OBJEXT) core/object/linuxsll.$(OBJEXT) \
|
||||||
core/object/null.$(OBJEXT) core/object/payload.$(OBJEXT) \
|
core/object/loop.$(OBJEXT) core/object/null.$(OBJEXT) \
|
||||||
core/object/pcap.$(OBJEXT) core/object/tcp.$(OBJEXT) \
|
core/object/payload.$(OBJEXT) core/object/pcap.$(OBJEXT) \
|
||||||
core/object/udp.$(OBJEXT) core/producer.$(OBJEXT) \
|
core/object/tcp.$(OBJEXT) core/object/udp.$(OBJEXT) \
|
||||||
core/receiver.$(OBJEXT) core/thread.$(OBJEXT) \
|
core/producer.$(OBJEXT) core/receiver.$(OBJEXT) \
|
||||||
filter/copy.$(OBJEXT) filter/ipsplit.$(OBJEXT) \
|
core/thread.$(OBJEXT) filter/copy.$(OBJEXT) \
|
||||||
filter/layer.$(OBJEXT) filter/split.$(OBJEXT) \
|
filter/ipsplit.$(OBJEXT) filter/layer.$(OBJEXT) \
|
||||||
filter/timing.$(OBJEXT) input/fpcap.$(OBJEXT) \
|
filter/split.$(OBJEXT) filter/timing.$(OBJEXT) \
|
||||||
input/mmpcap.$(OBJEXT) input/pcap.$(OBJEXT) \
|
input/fpcap.$(OBJEXT) input/mmpcap.$(OBJEXT) \
|
||||||
input/zmmpcap.$(OBJEXT) input/zpcap.$(OBJEXT) \
|
input/pcap.$(OBJEXT) input/zmmpcap.$(OBJEXT) \
|
||||||
lib/base64url.$(OBJEXT) lib/clock.$(OBJEXT) lib/trie.$(OBJEXT) \
|
input/zpcap.$(OBJEXT) lib/base64url.$(OBJEXT) \
|
||||||
output/dnscli.$(OBJEXT) output/pcap.$(OBJEXT) \
|
lib/clock.$(OBJEXT) lib/trie.$(OBJEXT) output/dnscli.$(OBJEXT) \
|
||||||
output/respdiff.$(OBJEXT) output/tcpcli.$(OBJEXT) \
|
output/pcap.$(OBJEXT) output/respdiff.$(OBJEXT) \
|
||||||
output/tlscli.$(OBJEXT) output/udpcli.$(OBJEXT)
|
output/tcpcli.$(OBJEXT) output/tlscli.$(OBJEXT) \
|
||||||
|
output/udpcli.$(OBJEXT)
|
||||||
dist_dnsjit_OBJECTS =
|
dist_dnsjit_OBJECTS =
|
||||||
dnsjit_OBJECTS = $(am_dnsjit_OBJECTS) $(dist_dnsjit_OBJECTS)
|
dnsjit_OBJECTS = $(am_dnsjit_OBJECTS) $(dist_dnsjit_OBJECTS)
|
||||||
am__DEPENDENCIES_1 =
|
am__DEPENDENCIES_1 =
|
||||||
|
@ -194,6 +195,7 @@ am__depfiles_remade = ./$(DEPDIR)/dnsjit.Po ./$(DEPDIR)/globals.Po \
|
||||||
core/object/$(DEPDIR)/icmp6.Po \
|
core/object/$(DEPDIR)/icmp6.Po \
|
||||||
core/object/$(DEPDIR)/ieee802.Po core/object/$(DEPDIR)/ip.Po \
|
core/object/$(DEPDIR)/ieee802.Po core/object/$(DEPDIR)/ip.Po \
|
||||||
core/object/$(DEPDIR)/ip6.Po core/object/$(DEPDIR)/linuxsll.Po \
|
core/object/$(DEPDIR)/ip6.Po core/object/$(DEPDIR)/linuxsll.Po \
|
||||||
|
core/object/$(DEPDIR)/linuxsll2.Po \
|
||||||
core/object/$(DEPDIR)/loop.Po core/object/$(DEPDIR)/null.Po \
|
core/object/$(DEPDIR)/loop.Po core/object/$(DEPDIR)/null.Po \
|
||||||
core/object/$(DEPDIR)/payload.Po core/object/$(DEPDIR)/pcap.Po \
|
core/object/$(DEPDIR)/payload.Po core/object/$(DEPDIR)/pcap.Po \
|
||||||
core/object/$(DEPDIR)/tcp.Po core/object/$(DEPDIR)/udp.Po \
|
core/object/$(DEPDIR)/tcp.Po core/object/$(DEPDIR)/udp.Po \
|
||||||
|
@ -358,6 +360,7 @@ EGREP = @EGREP@
|
||||||
ETAGS = @ETAGS@
|
ETAGS = @ETAGS@
|
||||||
EXEEXT = @EXEEXT@
|
EXEEXT = @EXEEXT@
|
||||||
FGREP = @FGREP@
|
FGREP = @FGREP@
|
||||||
|
FILECMD = @FILECMD@
|
||||||
GREP = @GREP@
|
GREP = @GREP@
|
||||||
INSTALL = @INSTALL@
|
INSTALL = @INSTALL@
|
||||||
INSTALL_DATA = @INSTALL_DATA@
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
@ -495,15 +498,16 @@ dnsjit_SOURCES = dnsjit.c globals.c core/channel.c core/compat.c \
|
||||||
core/file.c core/log.c core/object.c core/object/dns.c \
|
core/file.c core/log.c core/object.c core/object/dns.c \
|
||||||
core/object/ether.c core/object/gre.c core/object/icmp6.c \
|
core/object/ether.c core/object/gre.c core/object/icmp6.c \
|
||||||
core/object/icmp.c core/object/ieee802.c core/object/ip6.c \
|
core/object/icmp.c core/object/ieee802.c core/object/ip6.c \
|
||||||
core/object/ip.c core/object/linuxsll.c core/object/loop.c \
|
core/object/ip.c core/object/linuxsll2.c \
|
||||||
core/object/null.c core/object/payload.c core/object/pcap.c \
|
core/object/linuxsll.c core/object/loop.c core/object/null.c \
|
||||||
core/object/tcp.c core/object/udp.c core/producer.c \
|
core/object/payload.c core/object/pcap.c core/object/tcp.c \
|
||||||
core/receiver.c core/thread.c filter/copy.c filter/ipsplit.c \
|
core/object/udp.c core/producer.c core/receiver.c \
|
||||||
filter/layer.c filter/split.c filter/timing.c input/fpcap.c \
|
core/thread.c filter/copy.c filter/ipsplit.c filter/layer.c \
|
||||||
input/mmpcap.c input/pcap.c input/zmmpcap.c input/zpcap.c \
|
filter/split.c filter/timing.c input/fpcap.c input/mmpcap.c \
|
||||||
lib/base64url.c lib/clock.c lib/trie.c output/dnscli.c \
|
input/pcap.c input/zmmpcap.c input/zpcap.c lib/base64url.c \
|
||||||
output/pcap.c output/respdiff.c output/tcpcli.c \
|
lib/clock.c lib/trie.c output/dnscli.c output/pcap.c \
|
||||||
output/tlscli.c output/udpcli.c
|
output/respdiff.c output/tcpcli.c output/tlscli.c \
|
||||||
|
output/udpcli.c
|
||||||
|
|
||||||
# Lua sources
|
# Lua sources
|
||||||
dist_dnsjit_SOURCES = core.lua lib.lua input.lua filter.lua output.lua \
|
dist_dnsjit_SOURCES = core.lua lib.lua input.lua filter.lua output.lua \
|
||||||
|
@ -513,19 +517,20 @@ dist_dnsjit_SOURCES = core.lua lib.lua input.lua filter.lua output.lua \
|
||||||
core/object/ether.lua core/object/gre.lua \
|
core/object/ether.lua core/object/gre.lua \
|
||||||
core/object/icmp6.lua core/object/icmp.lua \
|
core/object/icmp6.lua core/object/icmp.lua \
|
||||||
core/object/ieee802.lua core/object/ip6.lua core/object/ip.lua \
|
core/object/ieee802.lua core/object/ip6.lua core/object/ip.lua \
|
||||||
core/object/linuxsll.lua core/object/loop.lua core/object.lua \
|
core/object/linuxsll2.lua core/object/linuxsll.lua \
|
||||||
core/object/null.lua core/object/payload.lua \
|
core/object/loop.lua core/object.lua core/object/null.lua \
|
||||||
core/object/pcap.lua core/objects.lua core/object/tcp.lua \
|
core/object/payload.lua core/object/pcap.lua core/objects.lua \
|
||||||
core/object/udp.lua core/producer.lua core/receiver.lua \
|
core/object/tcp.lua core/object/udp.lua core/producer.lua \
|
||||||
core/thread.lua core/timespec.lua filter/copy.lua \
|
core/receiver.lua core/thread.lua core/timespec.lua \
|
||||||
filter/ipsplit.lua filter/layer.lua filter/split.lua \
|
filter/copy.lua filter/ipsplit.lua filter/layer.lua \
|
||||||
filter/timing.lua input/fpcap.lua input/mmpcap.lua \
|
filter/split.lua filter/timing.lua input/fpcap.lua \
|
||||||
input/pcap.lua input/zero.lua input/zmmpcap.lua \
|
input/mmpcap.lua input/pcap.lua input/zero.lua \
|
||||||
input/zpcap.lua lib/base64url.lua lib/clock.lua lib/getopt.lua \
|
input/zmmpcap.lua input/zpcap.lua lib/base64url.lua \
|
||||||
lib/ip.lua lib/parseconf.lua lib/trie/iter.lua lib/trie.lua \
|
lib/clock.lua lib/getopt.lua lib/ip.lua lib/parseconf.lua \
|
||||||
lib/trie/node.lua output/dnscli.lua output/null.lua \
|
lib/trie/iter.lua lib/trie.lua lib/trie/node.lua \
|
||||||
output/pcap.lua output/respdiff.lua output/tcpcli.lua \
|
output/dnscli.lua output/null.lua output/pcap.lua \
|
||||||
output/tlscli.lua output/udpcli.lua
|
output/respdiff.lua output/tcpcli.lua output/tlscli.lua \
|
||||||
|
output/udpcli.lua
|
||||||
dnsjitincludedir = $(includedir)/dnsjit
|
dnsjitincludedir = $(includedir)/dnsjit
|
||||||
|
|
||||||
# Lua headers
|
# Lua headers
|
||||||
|
@ -534,45 +539,46 @@ nobase_dnsjitinclude_HEADERS = globals.h version.h core/assert.h \
|
||||||
core/object/dns.h core/object/ether.h core/object/gre.h \
|
core/object/dns.h core/object/ether.h core/object/gre.h \
|
||||||
core/object.h core/object/icmp6.h core/object/icmp.h \
|
core/object.h core/object/icmp6.h core/object/icmp.h \
|
||||||
core/object/ieee802.h core/object/ip6.h core/object/ip.h \
|
core/object/ieee802.h core/object/ip6.h core/object/ip.h \
|
||||||
core/object/linuxsll.h core/object/loop.h core/object/null.h \
|
core/object/linuxsll2.h core/object/linuxsll.h \
|
||||||
core/object/payload.h core/object/pcap.h core/object/tcp.h \
|
core/object/loop.h core/object/null.h core/object/payload.h \
|
||||||
core/object/udp.h core/producer.h core/receiver.h \
|
core/object/pcap.h core/object/tcp.h core/object/udp.h \
|
||||||
core/thread.h core/timespec.h filter/copy.h filter/ipsplit.h \
|
core/producer.h core/receiver.h core/thread.h core/timespec.h \
|
||||||
filter/layer.h filter/split.h filter/timing.h input/fpcap.h \
|
filter/copy.h filter/ipsplit.h filter/layer.h filter/split.h \
|
||||||
input/mmpcap.h input/pcap.h input/zmmpcap.h input/zpcap.h \
|
filter/timing.h input/fpcap.h input/mmpcap.h input/pcap.h \
|
||||||
lib/base64url.h lib/clock.h lib/trie.h output/dnscli.h \
|
input/zmmpcap.h input/zpcap.h lib/base64url.h lib/clock.h \
|
||||||
output/pcap.h output/respdiff.h output/tcpcli.h \
|
lib/trie.h output/dnscli.h output/pcap.h output/respdiff.h \
|
||||||
output/tlscli.h output/udpcli.h core/channel.hh core/file.hh \
|
output/tcpcli.h output/tlscli.h output/udpcli.h \
|
||||||
core/log.hh core/object/dns.hh core/object/ether.hh \
|
core/channel.hh core/file.hh core/log.hh core/object/dns.hh \
|
||||||
core/object/gre.hh core/object.hh core/object/icmp6.hh \
|
core/object/ether.hh core/object/gre.hh core/object.hh \
|
||||||
core/object/icmp.hh core/object/ieee802.hh core/object/ip6.hh \
|
core/object/icmp6.hh core/object/icmp.hh \
|
||||||
core/object/ip.hh core/object/linuxsll.hh core/object/loop.hh \
|
core/object/ieee802.hh core/object/ip6.hh core/object/ip.hh \
|
||||||
core/object/null.hh core/object/payload.hh core/object/pcap.hh \
|
core/object/linuxsll2.hh core/object/linuxsll.hh \
|
||||||
core/object/tcp.hh core/object/udp.hh core/producer.hh \
|
core/object/loop.hh core/object/null.hh core/object/payload.hh \
|
||||||
core/receiver.hh core/thread.hh core/timespec.hh \
|
core/object/pcap.hh core/object/tcp.hh core/object/udp.hh \
|
||||||
filter/copy.hh filter/ipsplit.hh filter/layer.hh \
|
core/producer.hh core/receiver.hh core/thread.hh \
|
||||||
filter/split.hh filter/timing.hh input/fpcap.hh \
|
core/timespec.hh filter/copy.hh filter/ipsplit.hh \
|
||||||
input/mmpcap.hh input/pcap.hh input/zmmpcap.hh input/zpcap.hh \
|
filter/layer.hh filter/split.hh filter/timing.hh \
|
||||||
lib/base64url.hh lib/clock.hh lib/trie.hh output/dnscli.hh \
|
input/fpcap.hh input/mmpcap.hh input/pcap.hh input/zmmpcap.hh \
|
||||||
output/pcap.hh output/respdiff.hh output/tcpcli.hh \
|
input/zpcap.hh lib/base64url.hh lib/clock.hh lib/trie.hh \
|
||||||
output/tlscli.hh output/udpcli.hh
|
output/dnscli.hh output/pcap.hh output/respdiff.hh \
|
||||||
|
output/tcpcli.hh output/tlscli.hh output/udpcli.hh
|
||||||
lua_hobjects = core/compat.luaho core/channel.luaho core/file.luaho \
|
lua_hobjects = core/compat.luaho core/channel.luaho core/file.luaho \
|
||||||
core/log.luaho core/object/dns.luaho core/object/ether.luaho \
|
core/log.luaho core/object/dns.luaho core/object/ether.luaho \
|
||||||
core/object/gre.luaho core/object/icmp6.luaho \
|
core/object/gre.luaho core/object/icmp6.luaho \
|
||||||
core/object/icmp.luaho core/object/ieee802.luaho \
|
core/object/icmp.luaho core/object/ieee802.luaho \
|
||||||
core/object/ip6.luaho core/object/ip.luaho \
|
core/object/ip6.luaho core/object/ip.luaho \
|
||||||
core/object/linuxsll.luaho core/object/loop.luaho \
|
core/object/linuxsll2.luaho core/object/linuxsll.luaho \
|
||||||
core/object.luaho core/object/null.luaho \
|
core/object/loop.luaho core/object.luaho \
|
||||||
core/object/payload.luaho core/object/pcap.luaho \
|
core/object/null.luaho core/object/payload.luaho \
|
||||||
core/object/tcp.luaho core/object/udp.luaho \
|
core/object/pcap.luaho core/object/tcp.luaho \
|
||||||
core/producer.luaho core/receiver.luaho core/thread.luaho \
|
core/object/udp.luaho core/producer.luaho core/receiver.luaho \
|
||||||
core/timespec.luaho filter/copy.luaho filter/ipsplit.luaho \
|
core/thread.luaho core/timespec.luaho filter/copy.luaho \
|
||||||
filter/layer.luaho filter/split.luaho filter/timing.luaho \
|
filter/ipsplit.luaho filter/layer.luaho filter/split.luaho \
|
||||||
input/fpcap.luaho input/mmpcap.luaho input/pcap.luaho \
|
filter/timing.luaho input/fpcap.luaho input/mmpcap.luaho \
|
||||||
input/zmmpcap.luaho input/zpcap.luaho lib/base64url.luaho \
|
input/pcap.luaho input/zmmpcap.luaho input/zpcap.luaho \
|
||||||
lib/clock.luaho lib/trie.luaho output/dnscli.luaho \
|
lib/base64url.luaho lib/clock.luaho lib/trie.luaho \
|
||||||
output/pcap.luaho output/respdiff.luaho output/tcpcli.luaho \
|
output/dnscli.luaho output/pcap.luaho output/respdiff.luaho \
|
||||||
output/tlscli.luaho output/udpcli.luaho
|
output/tcpcli.luaho output/tlscli.luaho output/udpcli.luaho
|
||||||
lua_objects = core.luao lib.luao input.luao filter.luao output.luao \
|
lua_objects = core.luao lib.luao input.luao filter.luao output.luao \
|
||||||
core/channel.luao core/compat.luao core/file.luao \
|
core/channel.luao core/compat.luao core/file.luao \
|
||||||
core/loader.luao core/log.luao core/object/dns/label.luao \
|
core/loader.luao core/log.luao core/object/dns/label.luao \
|
||||||
|
@ -581,8 +587,8 @@ lua_objects = core.luao lib.luao input.luao filter.luao output.luao \
|
||||||
core/object/gre.luao core/object/icmp6.luao \
|
core/object/gre.luao core/object/icmp6.luao \
|
||||||
core/object/icmp.luao core/object/ieee802.luao \
|
core/object/icmp.luao core/object/ieee802.luao \
|
||||||
core/object/ip6.luao core/object/ip.luao \
|
core/object/ip6.luao core/object/ip.luao \
|
||||||
core/object/linuxsll.luao core/object/loop.luao \
|
core/object/linuxsll2.luao core/object/linuxsll.luao \
|
||||||
core/object.luao core/object/null.luao \
|
core/object/loop.luao core/object.luao core/object/null.luao \
|
||||||
core/object/payload.luao core/object/pcap.luao \
|
core/object/payload.luao core/object/pcap.luao \
|
||||||
core/objects.luao core/object/tcp.luao core/object/udp.luao \
|
core/objects.luao core/object/tcp.luao core/object/udp.luao \
|
||||||
core/producer.luao core/receiver.luao core/thread.luao \
|
core/producer.luao core/receiver.luao core/thread.luao \
|
||||||
|
@ -609,24 +615,24 @@ man3_MANS = dnsjit.core.3 dnsjit.lib.3 dnsjit.input.3 dnsjit.filter.3 \
|
||||||
dnsjit.core.object.gre.3 dnsjit.core.object.icmp.3 \
|
dnsjit.core.object.gre.3 dnsjit.core.object.icmp.3 \
|
||||||
dnsjit.core.object.icmp6.3 dnsjit.core.object.ieee802.3 \
|
dnsjit.core.object.icmp6.3 dnsjit.core.object.ieee802.3 \
|
||||||
dnsjit.core.object.ip.3 dnsjit.core.object.ip6.3 \
|
dnsjit.core.object.ip.3 dnsjit.core.object.ip6.3 \
|
||||||
dnsjit.core.object.linuxsll.3 dnsjit.core.object.loop.3 \
|
dnsjit.core.object.linuxsll2.3 dnsjit.core.object.linuxsll.3 \
|
||||||
dnsjit.core.object.null.3 dnsjit.core.object.payload.3 \
|
dnsjit.core.object.loop.3 dnsjit.core.object.null.3 \
|
||||||
dnsjit.core.object.pcap.3 dnsjit.core.objects.3 \
|
dnsjit.core.object.payload.3 dnsjit.core.object.pcap.3 \
|
||||||
dnsjit.core.object.tcp.3 dnsjit.core.object.udp.3 \
|
dnsjit.core.objects.3 dnsjit.core.object.tcp.3 \
|
||||||
dnsjit.core.producer.3 dnsjit.core.receiver.3 \
|
dnsjit.core.object.udp.3 dnsjit.core.producer.3 \
|
||||||
dnsjit.core.thread.3 dnsjit.core.timespec.3 \
|
dnsjit.core.receiver.3 dnsjit.core.thread.3 \
|
||||||
dnsjit.filter.copy.3 dnsjit.filter.ipsplit.3 \
|
dnsjit.core.timespec.3 dnsjit.filter.copy.3 \
|
||||||
dnsjit.filter.layer.3 dnsjit.filter.split.3 \
|
dnsjit.filter.ipsplit.3 dnsjit.filter.layer.3 \
|
||||||
dnsjit.filter.timing.3 dnsjit.input.fpcap.3 \
|
dnsjit.filter.split.3 dnsjit.filter.timing.3 \
|
||||||
dnsjit.input.mmpcap.3 dnsjit.input.pcap.3 dnsjit.input.zero.3 \
|
dnsjit.input.fpcap.3 dnsjit.input.mmpcap.3 dnsjit.input.pcap.3 \
|
||||||
dnsjit.input.zmmpcap.3 dnsjit.input.zpcap.3 \
|
dnsjit.input.zero.3 dnsjit.input.zmmpcap.3 \
|
||||||
dnsjit.lib.base64url.3 dnsjit.lib.clock.3 dnsjit.lib.getopt.3 \
|
dnsjit.input.zpcap.3 dnsjit.lib.base64url.3 dnsjit.lib.clock.3 \
|
||||||
dnsjit.lib.ip.3 dnsjit.lib.parseconf.3 dnsjit.lib.trie.3 \
|
dnsjit.lib.getopt.3 dnsjit.lib.ip.3 dnsjit.lib.parseconf.3 \
|
||||||
dnsjit.lib.trie.iter.3 dnsjit.lib.trie.node.3 \
|
dnsjit.lib.trie.3 dnsjit.lib.trie.iter.3 \
|
||||||
dnsjit.output.dnscli.3 dnsjit.output.null.3 \
|
dnsjit.lib.trie.node.3 dnsjit.output.dnscli.3 \
|
||||||
dnsjit.output.pcap.3 dnsjit.output.respdiff.3 \
|
dnsjit.output.null.3 dnsjit.output.pcap.3 \
|
||||||
dnsjit.output.tcpcli.3 dnsjit.output.tlscli.3 \
|
dnsjit.output.respdiff.3 dnsjit.output.tcpcli.3 \
|
||||||
dnsjit.output.udpcli.3
|
dnsjit.output.tlscli.3 dnsjit.output.udpcli.3
|
||||||
all: $(BUILT_SOURCES) config.h
|
all: $(BUILT_SOURCES) config.h
|
||||||
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||||||
|
|
||||||
|
@ -763,6 +769,8 @@ core/object/ip6.$(OBJEXT): core/object/$(am__dirstamp) \
|
||||||
core/object/$(DEPDIR)/$(am__dirstamp)
|
core/object/$(DEPDIR)/$(am__dirstamp)
|
||||||
core/object/ip.$(OBJEXT): core/object/$(am__dirstamp) \
|
core/object/ip.$(OBJEXT): core/object/$(am__dirstamp) \
|
||||||
core/object/$(DEPDIR)/$(am__dirstamp)
|
core/object/$(DEPDIR)/$(am__dirstamp)
|
||||||
|
core/object/linuxsll2.$(OBJEXT): core/object/$(am__dirstamp) \
|
||||||
|
core/object/$(DEPDIR)/$(am__dirstamp)
|
||||||
core/object/linuxsll.$(OBJEXT): core/object/$(am__dirstamp) \
|
core/object/linuxsll.$(OBJEXT): core/object/$(am__dirstamp) \
|
||||||
core/object/$(DEPDIR)/$(am__dirstamp)
|
core/object/$(DEPDIR)/$(am__dirstamp)
|
||||||
core/object/loop.$(OBJEXT): core/object/$(am__dirstamp) \
|
core/object/loop.$(OBJEXT): core/object/$(am__dirstamp) \
|
||||||
|
@ -879,6 +887,7 @@ distclean-compile:
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/ip.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/ip.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/ip6.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/ip6.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/linuxsll.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/linuxsll.Po@am__quote@ # am--include-marker
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/linuxsll2.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/loop.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/loop.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/null.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/null.Po@am__quote@ # am--include-marker
|
||||||
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/payload.Po@am__quote@ # am--include-marker
|
@AMDEP_TRUE@@am__include@ @am__quote@core/object/$(DEPDIR)/payload.Po@am__quote@ # am--include-marker
|
||||||
|
@ -1285,6 +1294,7 @@ distclean: distclean-recursive
|
||||||
-rm -f core/object/$(DEPDIR)/ip.Po
|
-rm -f core/object/$(DEPDIR)/ip.Po
|
||||||
-rm -f core/object/$(DEPDIR)/ip6.Po
|
-rm -f core/object/$(DEPDIR)/ip6.Po
|
||||||
-rm -f core/object/$(DEPDIR)/linuxsll.Po
|
-rm -f core/object/$(DEPDIR)/linuxsll.Po
|
||||||
|
-rm -f core/object/$(DEPDIR)/linuxsll2.Po
|
||||||
-rm -f core/object/$(DEPDIR)/loop.Po
|
-rm -f core/object/$(DEPDIR)/loop.Po
|
||||||
-rm -f core/object/$(DEPDIR)/null.Po
|
-rm -f core/object/$(DEPDIR)/null.Po
|
||||||
-rm -f core/object/$(DEPDIR)/payload.Po
|
-rm -f core/object/$(DEPDIR)/payload.Po
|
||||||
|
@ -1378,6 +1388,7 @@ maintainer-clean: maintainer-clean-recursive
|
||||||
-rm -f core/object/$(DEPDIR)/ip.Po
|
-rm -f core/object/$(DEPDIR)/ip.Po
|
||||||
-rm -f core/object/$(DEPDIR)/ip6.Po
|
-rm -f core/object/$(DEPDIR)/ip6.Po
|
||||||
-rm -f core/object/$(DEPDIR)/linuxsll.Po
|
-rm -f core/object/$(DEPDIR)/linuxsll.Po
|
||||||
|
-rm -f core/object/$(DEPDIR)/linuxsll2.Po
|
||||||
-rm -f core/object/$(DEPDIR)/loop.Po
|
-rm -f core/object/$(DEPDIR)/loop.Po
|
||||||
-rm -f core/object/$(DEPDIR)/null.Po
|
-rm -f core/object/$(DEPDIR)/null.Po
|
||||||
-rm -f core/object/$(DEPDIR)/payload.Po
|
-rm -f core/object/$(DEPDIR)/payload.Po
|
||||||
|
@ -1551,6 +1562,9 @@ dnsjit.core.object.ip6.3in: core/object/ip6.lua gen-manpage.lua
|
||||||
dnsjit.core.object.ip.3in: core/object/ip.lua gen-manpage.lua
|
dnsjit.core.object.ip.3in: core/object/ip.lua gen-manpage.lua
|
||||||
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/ip.lua" > "$@"
|
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/ip.lua" > "$@"
|
||||||
|
|
||||||
|
dnsjit.core.object.linuxsll2.3in: core/object/linuxsll2.lua gen-manpage.lua
|
||||||
|
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/linuxsll2.lua" > "$@"
|
||||||
|
|
||||||
dnsjit.core.object.linuxsll.3in: core/object/linuxsll.lua gen-manpage.lua
|
dnsjit.core.object.linuxsll.3in: core/object/linuxsll.lua gen-manpage.lua
|
||||||
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/linuxsll.lua" > "$@"
|
$(LUAJIT) "$(srcdir)/gen-manpage.lua" "$(srcdir)/core/object/linuxsll.lua" > "$@"
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
@ -27,6 +27,7 @@
|
||||||
#include "core/object/null.h"
|
#include "core/object/null.h"
|
||||||
#include "core/object/loop.h"
|
#include "core/object/loop.h"
|
||||||
#include "core/object/linuxsll.h"
|
#include "core/object/linuxsll.h"
|
||||||
|
#include "core/object/linuxsll2.h"
|
||||||
#include "core/object/ieee802.h"
|
#include "core/object/ieee802.h"
|
||||||
#include "core/object/gre.h"
|
#include "core/object/gre.h"
|
||||||
#include "core/object/ip.h"
|
#include "core/object/ip.h"
|
||||||
|
@ -57,6 +58,8 @@ core_object_t* core_object_copy(const core_object_t* self)
|
||||||
return (core_object_t*)core_object_ieee802_copy((core_object_ieee802_t*)self);
|
return (core_object_t*)core_object_ieee802_copy((core_object_ieee802_t*)self);
|
||||||
case CORE_OBJECT_GRE:
|
case CORE_OBJECT_GRE:
|
||||||
return (core_object_t*)core_object_gre_copy((core_object_gre_t*)self);
|
return (core_object_t*)core_object_gre_copy((core_object_gre_t*)self);
|
||||||
|
case CORE_OBJECT_LINUXSLL2:
|
||||||
|
return (core_object_t*)core_object_linuxsll2_copy((core_object_linuxsll2_t*)self);
|
||||||
case CORE_OBJECT_IP:
|
case CORE_OBJECT_IP:
|
||||||
return (core_object_t*)core_object_ip_copy((core_object_ip_t*)self);
|
return (core_object_t*)core_object_ip_copy((core_object_ip_t*)self);
|
||||||
case CORE_OBJECT_IP6:
|
case CORE_OBJECT_IP6:
|
||||||
|
@ -105,6 +108,9 @@ void core_object_free(core_object_t* self)
|
||||||
case CORE_OBJECT_GRE:
|
case CORE_OBJECT_GRE:
|
||||||
core_object_gre_free((core_object_gre_t*)self);
|
core_object_gre_free((core_object_gre_t*)self);
|
||||||
break;
|
break;
|
||||||
|
case CORE_OBJECT_LINUXSLL2:
|
||||||
|
core_object_linuxsll2_free((core_object_linuxsll2_t*)self);
|
||||||
|
break;
|
||||||
case CORE_OBJECT_IP:
|
case CORE_OBJECT_IP:
|
||||||
core_object_ip_free((core_object_ip_t*)self);
|
core_object_ip_free((core_object_ip_t*)self);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
@ -30,6 +30,7 @@
|
||||||
#define CORE_OBJECT_LINUXSLL 13
|
#define CORE_OBJECT_LINUXSLL 13
|
||||||
#define CORE_OBJECT_IEEE802 14
|
#define CORE_OBJECT_IEEE802 14
|
||||||
#define CORE_OBJECT_GRE 15
|
#define CORE_OBJECT_GRE 15
|
||||||
|
#define CORE_OBJECT_LINUXSLL2 16
|
||||||
/* protocol objects */
|
/* protocol objects */
|
||||||
#define CORE_OBJECT_IP 20
|
#define CORE_OBJECT_IP 20
|
||||||
#define CORE_OBJECT_IP6 21
|
#define CORE_OBJECT_IP6 21
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
@ -41,6 +41,7 @@ require("dnsjit.core.object.ether_h")
|
||||||
require("dnsjit.core.object.null_h")
|
require("dnsjit.core.object.null_h")
|
||||||
require("dnsjit.core.object.loop_h")
|
require("dnsjit.core.object.loop_h")
|
||||||
require("dnsjit.core.object.linuxsll_h")
|
require("dnsjit.core.object.linuxsll_h")
|
||||||
|
require("dnsjit.core.object.linuxsll2_h")
|
||||||
require("dnsjit.core.object.ieee802_h")
|
require("dnsjit.core.object.ieee802_h")
|
||||||
require("dnsjit.core.object.gre_h")
|
require("dnsjit.core.object.gre_h")
|
||||||
require("dnsjit.core.object.ip_h")
|
require("dnsjit.core.object.ip_h")
|
||||||
|
@ -65,6 +66,7 @@ local Object = {
|
||||||
LINUXSLL = 13,
|
LINUXSLL = 13,
|
||||||
IEEE802 = 14,
|
IEEE802 = 14,
|
||||||
GRE = 15,
|
GRE = 15,
|
||||||
|
LINUXSLL2 = 16,
|
||||||
IP = 20,
|
IP = 20,
|
||||||
IP6 = 21,
|
IP6 = 21,
|
||||||
ICMP = 22,
|
ICMP = 22,
|
||||||
|
@ -83,6 +85,7 @@ _type[Object.LOOP] = "loop"
|
||||||
_type[Object.LINUXSLL] = "linuxsll"
|
_type[Object.LINUXSLL] = "linuxsll"
|
||||||
_type[Object.IEEE802] = "ieee802"
|
_type[Object.IEEE802] = "ieee802"
|
||||||
_type[Object.GRE] = "gre"
|
_type[Object.GRE] = "gre"
|
||||||
|
_type[Object.LINUXSLL2] = "linuxsll2"
|
||||||
_type[Object.IP] = "ip"
|
_type[Object.IP] = "ip"
|
||||||
_type[Object.IP6] = "ip6"
|
_type[Object.IP6] = "ip6"
|
||||||
_type[Object.ICMP] = "icmp"
|
_type[Object.ICMP] = "icmp"
|
||||||
|
@ -112,6 +115,7 @@ _cast[Object.LOOP] = "core_object_loop_t*"
|
||||||
_cast[Object.LINUXSLL] = "core_object_linuxsll_t*"
|
_cast[Object.LINUXSLL] = "core_object_linuxsll_t*"
|
||||||
_cast[Object.IEEE802] = "core_object_ieee802_t*"
|
_cast[Object.IEEE802] = "core_object_ieee802_t*"
|
||||||
_cast[Object.GRE] = "core_object_gre_t*"
|
_cast[Object.GRE] = "core_object_gre_t*"
|
||||||
|
_cast[Object.LINUXSLL2] = "core_object_linuxsll2_t*"
|
||||||
_cast[Object.IP] = "core_object_ip_t*"
|
_cast[Object.IP] = "core_object_ip_t*"
|
||||||
_cast[Object.IP6] = "core_object_ip6_t*"
|
_cast[Object.IP6] = "core_object_ip6_t*"
|
||||||
_cast[Object.ICMP] = "core_object_icmp_t*"
|
_cast[Object.ICMP] = "core_object_icmp_t*"
|
||||||
|
@ -164,6 +168,7 @@ core_object_t = ffi.metatype(t_name, { __index = Object })
|
||||||
-- dnsjit.core.object.null (3),
|
-- dnsjit.core.object.null (3),
|
||||||
-- dnsjit.core.object.loop (3),
|
-- dnsjit.core.object.loop (3),
|
||||||
-- dnsjit.core.object.linuxsll (3),
|
-- dnsjit.core.object.linuxsll (3),
|
||||||
|
-- dnsjit.core.object.linuxsll2 (3),
|
||||||
-- dnsjit.core.object.ieee802 (3),
|
-- dnsjit.core.object.ieee802 (3),
|
||||||
-- dnsjit.core.object.gre (3),
|
-- dnsjit.core.object.gre (3),
|
||||||
-- dnsjit.core.object.ip (3),
|
-- dnsjit.core.object.ip (3),
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
@ -51,6 +51,7 @@
|
||||||
#define bswap_64(x) bswap64(x)
|
#define bswap_64(x) bswap64(x)
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#include <ctype.h>
|
||||||
|
|
||||||
#define _ERR_MALFORMED -2
|
#define _ERR_MALFORMED -2
|
||||||
#define _ERR_NEEDLABELS -3
|
#define _ERR_NEEDLABELS -3
|
||||||
|
@ -475,3 +476,32 @@ int core_object_dns_parse_rr(core_object_dns_t* self, core_object_dns_rr_t* rr,
|
||||||
// TODO: error here on malformed/truncated? could be quite spammy
|
// TODO: error here on malformed/truncated? could be quite spammy
|
||||||
return _ERR_MALFORMED;
|
return _ERR_MALFORMED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* core_object_dns_torfc1035(const char* str, size_t len)
|
||||||
|
{
|
||||||
|
mlassert(str, "str is nil");
|
||||||
|
static char res[512];
|
||||||
|
|
||||||
|
size_t i, j = 0;
|
||||||
|
for (i = 0; i < len; i++) {
|
||||||
|
if (j + 4 >= sizeof(res) - 1) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (isalnum(str[i]) || str[i] == '-' || str[i] == '_') {
|
||||||
|
res[j++] = str[i];
|
||||||
|
} else if (isprint(str[i])) {
|
||||||
|
res[j++] = '\\';
|
||||||
|
res[j++] = str[i];
|
||||||
|
} else {
|
||||||
|
res[j++] = '\\';
|
||||||
|
res[j++] = '0' + (((unsigned char)str[i] >> 6) & 0x07);
|
||||||
|
res[j++] = '0' + (((unsigned char)str[i] >> 3) & 0x07);
|
||||||
|
res[j++] = '0' + ((unsigned char)str[i] & 0x07);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
res[j] = 0;
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
@ -117,3 +117,5 @@ void core_object_dns_reset(core_object_dns_t* self);
|
||||||
int core_object_dns_parse_header(core_object_dns_t* self);
|
int core_object_dns_parse_header(core_object_dns_t* self);
|
||||||
int core_object_dns_parse_q(core_object_dns_t* self, core_object_dns_q_t* q, core_object_dns_label_t* label, size_t labels);
|
int core_object_dns_parse_q(core_object_dns_t* self, core_object_dns_q_t* q, core_object_dns_label_t* label, size_t labels);
|
||||||
int core_object_dns_parse_rr(core_object_dns_t* self, core_object_dns_rr_t* rr, core_object_dns_label_t* label, size_t labels);
|
int core_object_dns_parse_rr(core_object_dns_t* self, core_object_dns_rr_t* rr, core_object_dns_label_t* label, size_t labels);
|
||||||
|
|
||||||
|
const char* core_object_dns_torfc1035(const char* str, size_t len);
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
@ -67,8 +67,16 @@ function Label.new(size)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Returns labels as a string and an offset to the next label.
|
-- Returns labels as a string and an offset to the next label.
|
||||||
-- The string may be nil if the first label was an offset.
|
-- Takes argument
|
||||||
-- The offset may be nil if the last label was an extension bits or end marker.
|
-- .IR labels ,
|
||||||
|
-- an array of labels returned by any of the parse functions, and
|
||||||
|
-- .IR num_labels ,
|
||||||
|
-- number of labels in the array.
|
||||||
|
-- Optional
|
||||||
|
-- .I offset_labels
|
||||||
|
-- can be used to skip labels at the start.
|
||||||
|
-- The return string may be nil if the first label was an offset.
|
||||||
|
-- The return offset may be nil if the last label was an extension bits or end marker.
|
||||||
function Label.tostring(dns, labels, num_labels, offset_labels)
|
function Label.tostring(dns, labels, num_labels, offset_labels)
|
||||||
if offset_labels == nil then
|
if offset_labels == nil then
|
||||||
offset_labels = 0
|
offset_labels = 0
|
||||||
|
@ -91,9 +99,50 @@ function Label.tostring(dns, labels, num_labels, offset_labels)
|
||||||
return dn, nil
|
return dn, nil
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Returns a RFC1035 domain name of the labels and an offset to the next label.
|
||||||
|
-- Takes argument
|
||||||
|
-- .IR labels ,
|
||||||
|
-- an array of labels returned by any of the parse functions, and
|
||||||
|
-- .IR num_labels ,
|
||||||
|
-- number of labels in the array.
|
||||||
|
-- Optional
|
||||||
|
-- .I offset_labels
|
||||||
|
-- can be used to skip labels at the start.
|
||||||
|
-- The return string may be nil if the first label was an offset.
|
||||||
|
-- The return offset may be nil if the last label was an extension bits or end marker.
|
||||||
|
function Label.torfc1035(dns, labels, num_labels, offset_labels)
|
||||||
|
if offset_labels == nil then
|
||||||
|
offset_labels = 0
|
||||||
|
end
|
||||||
|
local dn
|
||||||
|
for n = 1, tonumber(num_labels) do
|
||||||
|
local label = labels[n - 1 + offset_labels]
|
||||||
|
|
||||||
|
if label.have_dn == 1 then
|
||||||
|
if dn == nil then
|
||||||
|
dn = ""
|
||||||
|
end
|
||||||
|
dn = dn .. ffi.string(ffi.C.core_object_dns_torfc1035(dns.payload + label.offset + 1, label.length)) .. "."
|
||||||
|
elseif label.have_offset == 1 then
|
||||||
|
return dn, label.offset
|
||||||
|
else
|
||||||
|
return dn, nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return dn, nil
|
||||||
|
end
|
||||||
|
|
||||||
-- Returns labels as a string which also includes a textual notation of the
|
-- Returns labels as a string which also includes a textual notation of the
|
||||||
-- offset in the form of
|
-- offset in the form of
|
||||||
-- .IR "<offset>label" .
|
-- .IR "<offset>label" .
|
||||||
|
-- Takes argument
|
||||||
|
-- .IR labels ,
|
||||||
|
-- an array of labels returned by any of the parse functions, and
|
||||||
|
-- .IR num_labels ,
|
||||||
|
-- number of labels in the array.
|
||||||
|
-- Optional
|
||||||
|
-- .I offset_labels
|
||||||
|
-- can be used to skip labels at the start.
|
||||||
function Label.tooffstr(dns, labels, num_labels, offset_labels)
|
function Label.tooffstr(dns, labels, num_labels, offset_labels)
|
||||||
if offset_labels == nil then
|
if offset_labels == nil then
|
||||||
offset_labels = 0
|
offset_labels = 0
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
@ -37,6 +37,7 @@
|
||||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, \
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, \
|
||||||
0, 0, 0, 0, \
|
0, 0, 0, 0, \
|
||||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, \
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, \
|
||||||
|
0, \
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
@ -36,6 +36,8 @@ typedef struct core_object_ip6 {
|
||||||
uint16_t frag_offlg;
|
uint16_t frag_offlg;
|
||||||
uint16_t frag_ident;
|
uint16_t frag_ident;
|
||||||
uint8_t rtdst[16];
|
uint8_t rtdst[16];
|
||||||
|
|
||||||
|
uint16_t hlen;
|
||||||
} core_object_ip6_t;
|
} core_object_ip6_t;
|
||||||
|
|
||||||
core_object_ip6_t* core_object_ip6_copy(const core_object_ip6_t* self);
|
core_object_ip6_t* core_object_ip6_copy(const core_object_ip6_t* self);
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
@ -58,6 +58,9 @@
|
||||||
-- rtdst
|
-- rtdst
|
||||||
-- Destination address found in the routing extension header.
|
-- Destination address found in the routing extension header.
|
||||||
-- .TP
|
-- .TP
|
||||||
|
-- hlen
|
||||||
|
-- The length of extension headers, in bytes.
|
||||||
|
-- .TP
|
||||||
-- payload
|
-- payload
|
||||||
-- A pointer to the payload.
|
-- A pointer to the payload.
|
||||||
-- .TP
|
-- .TP
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
45
include/dnsjit/core/object/linuxsll2.c
Normal file
45
include/dnsjit/core/object/linuxsll2.c
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This file is part of dnsjit.
|
||||||
|
*
|
||||||
|
* dnsjit 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 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* dnsjit 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 dnsjit. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "core/object/linuxsll2.h"
|
||||||
|
#include "core/assert.h"
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
core_object_linuxsll2_t* core_object_linuxsll2_copy(const core_object_linuxsll2_t* self)
|
||||||
|
{
|
||||||
|
core_object_linuxsll2_t* copy;
|
||||||
|
glassert_self();
|
||||||
|
|
||||||
|
glfatal_oom(copy = malloc(sizeof(core_object_linuxsll2_t)));
|
||||||
|
memcpy(copy, self, sizeof(core_object_linuxsll2_t));
|
||||||
|
copy->obj_prev = 0;
|
||||||
|
|
||||||
|
return copy;
|
||||||
|
}
|
||||||
|
|
||||||
|
void core_object_linuxsll2_free(core_object_linuxsll2_t* self)
|
||||||
|
{
|
||||||
|
glassert_self();
|
||||||
|
free(self);
|
||||||
|
}
|
38
include/dnsjit/core/object/linuxsll2.h
Normal file
38
include/dnsjit/core/object/linuxsll2.h
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This file is part of dnsjit.
|
||||||
|
*
|
||||||
|
* dnsjit 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 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* dnsjit 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 dnsjit. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <dnsjit/core/object.h>
|
||||||
|
#include <dnsjit/core/timespec.h>
|
||||||
|
|
||||||
|
#ifndef __dnsjit_core_object_linuxsll2_h
|
||||||
|
#define __dnsjit_core_object_linuxsll2_h
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
#include <dnsjit/core/object/linuxsll2.hh>
|
||||||
|
|
||||||
|
#define CORE_OBJECT_LINUXSLL2_INIT(prev) \
|
||||||
|
{ \
|
||||||
|
CORE_OBJECT_INIT(CORE_OBJECT_LINUXSLL2, prev) \
|
||||||
|
, \
|
||||||
|
0, 0, 0, 0, 0, 0, { 0, 0, 0, 0, 0, 0, 0, 0 } \
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
37
include/dnsjit/core/object/linuxsll2.hh
Normal file
37
include/dnsjit/core/object/linuxsll2.hh
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This file is part of dnsjit.
|
||||||
|
*
|
||||||
|
* dnsjit 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 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* dnsjit 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 dnsjit. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// lua:require("dnsjit.core.object_h")
|
||||||
|
|
||||||
|
typedef struct core_object_linuxsll2 {
|
||||||
|
const core_object_t* obj_prev;
|
||||||
|
int32_t obj_type;
|
||||||
|
|
||||||
|
uint16_t protocol_type;
|
||||||
|
uint16_t reserved;
|
||||||
|
uint32_t interface_index;
|
||||||
|
uint16_t arphrd_type;
|
||||||
|
uint8_t packet_type;
|
||||||
|
uint8_t link_layer_address_length;
|
||||||
|
uint8_t link_layer_address[8];
|
||||||
|
} core_object_linuxsll2_t;
|
||||||
|
|
||||||
|
core_object_linuxsll2_t* core_object_linuxsll2_copy(const core_object_linuxsll2_t* self);
|
||||||
|
void core_object_linuxsll2_free(core_object_linuxsll2_t* self);
|
90
include/dnsjit/core/object/linuxsll2.lua
Normal file
90
include/dnsjit/core/object/linuxsll2.lua
Normal file
|
@ -0,0 +1,90 @@
|
||||||
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
|
-- All rights reserved.
|
||||||
|
--
|
||||||
|
-- This file is part of dnsjit.
|
||||||
|
--
|
||||||
|
-- dnsjit 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 3 of the License, or
|
||||||
|
-- (at your option) any later version.
|
||||||
|
--
|
||||||
|
-- dnsjit 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 dnsjit. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
-- dnsjit.core.object.linuxsll2
|
||||||
|
-- Linux cooked-mode v2 capture (SLL2) part of a packet
|
||||||
|
--
|
||||||
|
-- The SLL2 part of a packet that usually can be found in the object chain
|
||||||
|
-- after parsing with, for example, Layer filter.
|
||||||
|
-- .SS Attributes
|
||||||
|
-- .TP
|
||||||
|
-- protocol_type
|
||||||
|
-- The protocol type.
|
||||||
|
-- .TP
|
||||||
|
-- reserved
|
||||||
|
-- Reserved (MBZ).
|
||||||
|
-- .TP
|
||||||
|
-- interface_index
|
||||||
|
-- The interface index, on the machine on which the capture is done, of the interface on which the packet was sent or received.
|
||||||
|
-- .TP
|
||||||
|
-- arphrd_type
|
||||||
|
-- The link-layer device type.
|
||||||
|
-- .TP
|
||||||
|
-- packet_type
|
||||||
|
-- The packet type.
|
||||||
|
-- .TP
|
||||||
|
-- link_layer_address_length
|
||||||
|
-- The length of the link-layer address.
|
||||||
|
-- .TP
|
||||||
|
-- link_layer_address
|
||||||
|
-- The link-layer address.
|
||||||
|
module(...,package.seeall)
|
||||||
|
|
||||||
|
require("dnsjit.core.object.linuxsll2_h")
|
||||||
|
local ffi = require("ffi")
|
||||||
|
local C = ffi.C
|
||||||
|
|
||||||
|
local t_name = "core_object_linuxsll2_t"
|
||||||
|
local core_object_linuxsll2_t
|
||||||
|
local Linuxsll2 = {}
|
||||||
|
|
||||||
|
-- Return the textual type of the object.
|
||||||
|
function Linuxsll2:type()
|
||||||
|
return "linuxsll2"
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Return the previous object.
|
||||||
|
function Linuxsll2:prev()
|
||||||
|
return self.obj_prev
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Cast the object to the underlining object module and return it.
|
||||||
|
function Linuxsll2:cast()
|
||||||
|
return self
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Cast the object to the generic object module and return it.
|
||||||
|
function Linuxsll2:uncast()
|
||||||
|
return ffi.cast("core_object_t*", self)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Make a copy of the object and return it.
|
||||||
|
function Linuxsll2:copy()
|
||||||
|
return C.core_object_linuxsll2_copy(self)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Free the object, should only be used on copies or otherwise allocated.
|
||||||
|
function Linuxsll2:free()
|
||||||
|
C.core_object_linuxsll2_free(self)
|
||||||
|
end
|
||||||
|
|
||||||
|
core_object_linuxsll2_t = ffi.metatype(t_name, { __index = Linuxsll2 })
|
||||||
|
|
||||||
|
-- dnsjit.core.object (3).
|
||||||
|
-- dnsjit.filter.layer (3)
|
||||||
|
return Linuxsll2
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
-- Copyright (c) 2018-2024 OARC, Inc.
|
-- Copyright (c) 2018-2025 OARC, Inc.
|
||||||
-- All rights reserved.
|
-- All rights reserved.
|
||||||
--
|
--
|
||||||
-- This file is part of dnsjit.
|
-- This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2018-2024 OARC, Inc.
|
* Copyright (c) 2018-2025 OARC, Inc.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* This file is part of dnsjit.
|
* This file is part of dnsjit.
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue