1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-06 04:31:29 +00:00

Arp sp00fing c0de

This commit is contained in:
fyodor
2005-07-26 06:26:00 +00:00
parent db7794d596
commit aafb4a0a82
19 changed files with 330 additions and 191 deletions

View File

@@ -2,6 +2,21 @@
UNRELEASED UNRELEASED
o Added the --spoof_mac option, which asks Nmap to use the given MAC
address for all of the raw ethernet frames it sends. The MAC given
can take several formats. If it is simply the string "0", Nmap
chooses a completely random MAC for the session. If the given
string is an even number of hex digits (with the pairs optionally
separated by a colon), Nmap will use those as the MAC. If less than
12 hex digits are provided, Nmap fills in the remainder of the 6
bytes with random values. If the argument isn't a 0 or hex string,
Nmap looks through the nmap-mac-prefixes to find a vendor name
containing the given string (it is case insensitive). If a match is
found, Nmap uses the vendor's OUI (3-byte prefix) and fills out the
remaining 3 bytes randomly. Valid --spoof_mac argument examples are
"Apple", "0", "01:02:03:04:05:06", "deadbeefcafe", "0020F2", and
"Cisco".
o Fixed a problem where Nmap compilation would use header files from o Fixed a problem where Nmap compilation would use header files from
the libpcap included with Nmap even when it was linking to a system the libpcap included with Nmap even when it was linking to a system
libpcap. Thanks to Solar Designer (solar(a)openwall.com) and Okan libpcap. Thanks to Solar Designer (solar(a)openwall.com) and Okan

View File

@@ -221,3 +221,26 @@ const char *MACPrefix2Corp(const u8 *prefix) {
ent = findMACEntry(MacCharPrefix2Key(prefix)); ent = findMACEntry(MacCharPrefix2Key(prefix));
return (ent)? ent->vendor : NULL; return (ent)? ent->vendor : NULL;
} }
/* Takes a string and looks through the table for a vendor name which
contains that string. Sets the first three bytes in mac_data and
returns true for the first matching entry found. If no entries
match, leaves mac_data untouched and returns false. Note that this
is not particularly efficient and so should be rewriteen if it is
called often */
bool MACCorp2Prefix(const char *vendorstr, u8 *mac_data) {
if (!vendorstr) fatal("%s: vendorstr is NULL", __FUNCTION__);
if (!mac_data) fatal("%s: mac_data is NULL", __FUNCTION__);
if (!initialized) InitializeTable();
for(int i = 0; i < MacTable.table_capacity; i++ ) {
if (MacTable.table[i])
if (strcasestr(MacTable.table[i]->vendor, vendorstr)) {
mac_data[0] = MacTable.table[i]->prefix >> 16;
mac_data[1] = (MacTable.table[i]->prefix >> 8) & 0xFF;
mac_data[2] = MacTable.table[i]->prefix & 0xFF;
return true;
}
}
return false;
}

View File

@@ -111,4 +111,12 @@
is some other error. */ is some other error. */
const char *MACPrefix2Corp(const u8 *prefix); const char *MACPrefix2Corp(const u8 *prefix);
/* Takes a string and looks through the table for a vendor name which
contains that string. Sets the first three bytes in mac_data and
returns true for the first matching entry found. If no entries
match, leaves mac_data untouched and returns false. Note that this
is not particularly efficient and so should be rewriteen if it is
called often */
bool MACCorp2Prefix(const char *vendorstr, u8 *mac_data);
#endif /* MACLOOKUP_H */ #endif /* MACLOOKUP_H */

View File

@@ -1,4 +1,4 @@
export NMAP_VERSION = 3.83.SOC2 export NMAP_VERSION = 3.83.SOC3
NMAP_NAME= nmap NMAP_NAME= nmap
NMAP_URL= http://www.insecure.org/nmap/ NMAP_URL= http://www.insecure.org/nmap/
NMAP_PLATFORM=@host@ NMAP_PLATFORM=@host@

View File

@@ -242,6 +242,7 @@ void NmapOps::Initialize() {
#endif #endif
if (xsl_stylesheet) free(xsl_stylesheet); if (xsl_stylesheet) free(xsl_stylesheet);
xsl_stylesheet = strdup(tmpxsl); xsl_stylesheet = strdup(tmpxsl);
spoof_mac_set = false;
} }
bool NmapOps::TCPScan() { bool NmapOps::TCPScan() {
@@ -269,7 +270,7 @@ bool NmapOps::RawScan() {
void NmapOps::ValidateOptions() { void NmapOps::ValidateOptions() {
if (pingtype == PINGTYPE_UNKNOWN) { if (pingtype == PINGTYPE_UNKNOWN) {
if (isr00t && af() == AF_INET) pingtype = PINGTYPE_TCP|PINGTYPE_TCP_USE_ACK|PINGTYPE_ICMP_PING; if (isr00t && af() == AF_INET) pingtype = DEFAULT_PING_TYPES;
else pingtype = PINGTYPE_TCP; // if nonr00t or IPv6 else pingtype = PINGTYPE_TCP; // if nonr00t or IPv6
num_ping_ackprobes = 1; num_ping_ackprobes = 1;
ping_ackprobes[0] = DEFAULT_TCP_PROBE_PORT; ping_ackprobes[0] = DEFAULT_TCP_PROBE_PORT;
@@ -480,3 +481,8 @@ void NmapOps::setXSLStyleSheet(char *xslname) {
if (xsl_stylesheet) free(xsl_stylesheet); if (xsl_stylesheet) free(xsl_stylesheet);
xsl_stylesheet = xslname? strdup(xslname) : NULL; xsl_stylesheet = xslname? strdup(xslname) : NULL;
} }
void NmapOps::setSpoofMACAddress(u8 *mac_data) {
memcpy(spoof_mac, mac_data, 6);
spoof_mac_set = true;
}

View File

@@ -220,6 +220,11 @@ class NmapOps {
should be skipped */ should be skipped */
char *XSLStyleSheet() { return xsl_stylesheet; } char *XSLStyleSheet() { return xsl_stylesheet; }
/* Sets the spoofed MAC address */
void setSpoofMACAddress(u8 *mac_data);
/* Gets the spoofed MAC address, but returns NULL if it hasn't been set */
const u8 *spoofMACAddress() { return spoof_mac_set? spoof_mac : NULL; }
int max_ips_to_scan; // Used for Random input (-iR) to specify how int max_ips_to_scan; // Used for Random input (-iR) to specify how
// many IPs to try before stopping. 0 means unlimited. // many IPs to try before stopping. 0 means unlimited.
int extra_payload_length; /* These two are for --data_length op */ int extra_payload_length; /* These two are for --data_length op */
@@ -290,5 +295,7 @@ class NmapOps {
bool pTrace; // Whether packet tracing has been enabled bool pTrace; // Whether packet tracing has been enabled
bool vTrace; // Whether version tracing has been enabled bool vTrace; // Whether version tracing has been enabled
char *xsl_stylesheet; char *xsl_stylesheet;
u8 spoof_mac[6];
bool spoof_mac_set;
}; };

View File

@@ -103,7 +103,7 @@
#ifndef CONFIG_H #ifndef CONFIG_H
#define CONFIG_H #define CONFIG_H
/* #undef PCAP_TIMEOUT_IGNORED */ #define PCAP_TIMEOUT_IGNORED 1
#define HAVE_STRUCT_IP 1 #define HAVE_STRUCT_IP 1
@@ -123,7 +123,7 @@
#define HAVE_STRING_H 1 #define HAVE_STRING_H 1
/* #undef HAVE_GETOPT_H */ #define HAVE_GETOPT_H 1
#define HAVE_STRINGS_H 1 #define HAVE_STRINGS_H 1
@@ -131,7 +131,7 @@
/* #undef HAVE_BSTRING_H */ /* #undef HAVE_BSTRING_H */
#define WORDS_BIGENDIAN 1 /* #undef WORDS_BIGENDIAN */
#define HAVE_MEMORY_H 1 #define HAVE_MEMORY_H 1
@@ -142,21 +142,21 @@
#define HAVE_SYS_PARAM_H 1 #define HAVE_SYS_PARAM_H 1
#define HAVE_SYS_SOCKIO_H 1 /* #undef HAVE_SYS_SOCKIO_H */
/* #undef HAVE_PCRE_H */ /* #undef HAVE_PCRE_H */
/* #undef HAVE_PCRE_PCRE_H */ #define HAVE_PCRE_PCRE_H 1
#define BSD_NETWORKING 1 #define BSD_NETWORKING 1
/* #undef HAVE_INET_ATON */ #define HAVE_INET_ATON 1
/* #undef HAVE_STRCASESTR */ #define HAVE_STRCASESTR 1
/* #undef HAVE_GETOPT_LONG */ /* #undef HAVE_GETOPT_LONG */
#define IN_ADDR_DEEPSTRUCT 1 /* #undef IN_ADDR_DEEPSTRUCT */
/* #undef HAVE_NETINET_IN_SYSTEM_H */ /* #undef HAVE_NETINET_IN_SYSTEM_H */
@@ -164,7 +164,7 @@
#define HAVE_NETINET_IF_ETHER_H 1 #define HAVE_NETINET_IF_ETHER_H 1
/* #undef HAVE_OPENSSL */ #define HAVE_OPENSSL 1
/* #undef STUPID_SOLARIS_CHECKSUM_BUG */ /* #undef STUPID_SOLARIS_CHECKSUM_BUG */
@@ -191,10 +191,10 @@ extern "C" int gethostname (char *, unsigned int);
#endif #endif
/* #undef DEC */ /* #undef DEC */
/* #undef LINUX */ #define LINUX 1
/* #undef FREEBSD */ /* #undef FREEBSD */
/* #undef OPENBSD */ /* #undef OPENBSD */
#define SOLARIS 1 /* #undef SOLARIS */
/* #undef SUNOS */ /* #undef SUNOS */
/* #undef BSDI */ /* #undef BSDI */
/* #undef IRIX */ /* #undef IRIX */

View File

@@ -500,10 +500,27 @@ while ethernet frames work best on the many Windows versions where
Microsoft has disabled raw sockets support. Nmap still uses raw IP Microsoft has disabled raw sockets support. Nmap still uses raw IP
packets when there is no other choice (such as non-ethernet packets when there is no other choice (such as non-ethernet
connections). connections).
.TP
.B --send_ip .B --send_ip
Asks Nmap to send packets via raw IP sockets rather than sending lower Asks Nmap to send packets via raw IP sockets rather than sending lower
level ethernet frames. It is the complement to the --send-eth level ethernet frames. It is the complement to the --send-eth
option.discussed previously. option.discussed previously.
.TP
.B \--spoof_mac [mac, prefix, or vendor substring]
Ask Nmap to use the given MAC address for all of the raw ethernet
frames it sends. The MAC given can take several formats. If it is
simply the string "0", Nmap chooses a completely random MAC for the
session. If the given string is an even number of hex digits (with
the pairs optionally separated by a colon), Nmap will use those as the
MAC. If less than 12 hex digits are provided, Nmap fills in the
remainder of the 6 bytes with random values. If the argument isn't a
0 or hex string, Nmap looks through the nmap-mac-prefixes to find a
vendor name containing the given string (it is case insensitive). If
a match is found, Nmap uses the vendor's OUI (3-byte prefix) and fills
out the remaining 3 bytes randomly. Valid --spoof_mac argument
examples are "Apple", "0", "01:02:03:04:05:06", "deadbeefcafe",
"0020F2", and "Cisco".
.TP
.B \-f .B \-f
This option causes the requested scan (including ping scans) to use This option causes the requested scan (including ping scans) to use
tiny fragmented IP packets. The idea is to split up the TCP header tiny fragmented IP packets. The idea is to split up the TCP header

View File

@@ -1,4 +1,4 @@
Nmap 3.83.SOC2 Usage: nmap [Scan Type(s)] [Options] <host or net list> Nmap 3.83.SOC3 Usage: nmap [Scan Type(s)] [Options] <host or net list>
Some Common Scan Types ('*' options require root privileges) Some Common Scan Types ('*' options require root privileges)
* -sS TCP SYN stealth port scan (default if privileged (root)) * -sS TCP SYN stealth port scan (default if privileged (root))
-sT TCP connect() port scan (default for unprivileged users) -sT TCP connect() port scan (default for unprivileged users)

View File

@@ -461,7 +461,7 @@
or other scan types, have a look at http://nmap6.source- or other scan types, have a look at http://nmap6.source-
forge.net/ . forge.net/ .
<B>--send-eth</B> <B>--send_eth</B>
Asks Nmap to send packets at the raw ethernet (data link) layer Asks Nmap to send packets at the raw ethernet (data link) layer
rather than the higher IP (network) layer. By default, Nmap rather than the higher IP (network) layer. By default, Nmap
chooses the one which is generally best for the platform it is chooses the one which is generally best for the platform it is
@@ -469,7 +469,7 @@
for UNIX machines, while ethernet frames work best on the many for UNIX machines, while ethernet frames work best on the many
Windows versions where Microsoft has disabled raw sockets sup- Windows versions where Microsoft has disabled raw sockets sup-
port. Nmap still uses raw IP packets when there is no other port. Nmap still uses raw IP packets when there is no other
choice (such as non-ethernet connections). <B>--send-ip</B> Asks Nmap choice (such as non-ethernet connections). <B>--send_ip</B> Asks Nmap
to send packets via raw IP sockets rather than sending lower to send packets via raw IP sockets rather than sending lower
level ethernet frames. It is the complement to the --send-eth level ethernet frames. It is the complement to the --send-eth
option.discussed previously. <B>-f</B> This option causes the option.discussed previously. <B>-f</B> This option causes the
@@ -544,7 +544,7 @@
URL is often more useful, but the local filesystem locaton of URL is often more useful, but the local filesystem locaton of
nmap.xsl is used by default for privacy reasons. nmap.xsl is used by default for privacy reasons.
<B>--no-stylesheet</B> <B>--no_stylesheet</B>
Specify this option to prevent Nmap from associating any XSL Specify this option to prevent Nmap from associating any XSL
stylesheet with its XML output. The xml-stylesheet directive is stylesheet with its XML output. The xml-stylesheet directive is
omitted. omitted.

View File

@@ -22,7 +22,7 @@ pkglibdir = $(libdir)/libdnet
pkgincludedir = $(includedir)/libdnet pkgincludedir = $(includedir)/libdnet
top_builddir = . top_builddir = .
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = config/install-sh -c INSTALL = /usr/bin/install -c
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@@ -34,8 +34,8 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = sparc-sun-solaris2.9 build_triplet = x86_64-unknown-linux-gnu
host_triplet = sparc-sun-solaris2.9 host_triplet = x86_64-unknown-linux-gnu
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/dnet-config.in \ $(srcdir)/Makefile.in $(srcdir)/dnet-config.in \
$(top_srcdir)/Makefile.am.common $(top_srcdir)/configure \ $(top_srcdir)/Makefile.am.common $(top_srcdir)/configure \
@@ -118,11 +118,11 @@ INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL} INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
LDFLAGS = LDFLAGS =
LIBOBJS = err$U.o strsep$U.o arp-ioctl$U.o eth-dlpi$U.o fw-none$U.o intf$U.o ip-cooked$U.o route-bsd$U.o tun-none$U.o LIBOBJS = strlcat$U.o strlcpy$U.o arp-ioctl$U.o eth-linux$U.o fw-ipchains$U.o intf$U.o ip$U.o route-linux$U.o tun-linux$U.o
LIBS = -lsocket -lnsl LIBS =
LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL = $(SHELL) $(top_builddir)/libtool
LN_S = ln -s LN_S = ln -s
LTLIBOBJS = err$U.lo strsep$U.lo arp-ioctl$U.lo eth-dlpi$U.lo fw-none$U.lo intf$U.lo ip-cooked$U.lo route-bsd$U.lo tun-none$U.lo LTLIBOBJS = strlcat$U.lo strlcpy$U.lo arp-ioctl$U.lo eth-linux$U.lo fw-ipchains$U.lo intf$U.lo ip$U.lo route-linux$U.lo tun-linux$U.lo
MAINT = # MAINT = #
MAINTAINER_MODE_FALSE = MAINTAINER_MODE_FALSE =
MAINTAINER_MODE_TRUE = # MAINTAINER_MODE_TRUE = #
@@ -140,7 +140,7 @@ PYTHON_FALSE =
PYTHON_TRUE = # PYTHON_TRUE = #
RANLIB = ranlib RANLIB = ranlib
SET_MAKE = SET_MAKE =
SHELL = /bin/bash SHELL = /bin/sh
STRIP = strip STRIP = strip
TCLINC = TCLINC =
TCLLIB = TCLLIB =
@@ -164,18 +164,18 @@ am__quote =
am__tar = ${AMTAR} chof - "$$tardir" am__tar = ${AMTAR} chof - "$$tardir"
am__untar = ${AMTAR} xf - am__untar = ${AMTAR} xf -
bindir = ${exec_prefix}/bin bindir = ${exec_prefix}/bin
build = sparc-sun-solaris2.9 build = x86_64-unknown-linux-gnu
build_alias = build_alias =
build_cpu = sparc build_cpu = x86_64
build_os = solaris2.9 build_os = linux-gnu
build_vendor = sun build_vendor = unknown
datadir = ${prefix}/share datadir = ${prefix}/share
exec_prefix = ${prefix} exec_prefix = ${prefix}
host = sparc-sun-solaris2.9 host = x86_64-unknown-linux-gnu
host_alias = host_alias =
host_cpu = sparc host_cpu = x86_64
host_os = solaris2.9 host_os = linux-gnu
host_vendor = sun host_vendor = unknown
includedir = ${prefix}/include includedir = ${prefix}/include
infodir = ${prefix}/info infodir = ${prefix}/info
install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh
@@ -183,7 +183,7 @@ libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec libexecdir = ${exec_prefix}/libexec
localstatedir = ${prefix}/var localstatedir = ${prefix}/var
mandir = ${prefix}/man mandir = ${prefix}/man
mkdir_p = $(mkinstalldirs) mkdir_p = mkdir -p --
oldincludedir = /usr/include oldincludedir = /usr/include
prefix = /usr/local prefix = /usr/local
program_transform_name = s,x,x, program_transform_name = s,x,x,

View File

@@ -22,7 +22,7 @@ pkglibdir = $(libdir)/libdnet
pkgincludedir = $(includedir)/libdnet pkgincludedir = $(includedir)/libdnet
top_builddir = .. top_builddir = ..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = ../config/install-sh -c INSTALL = /usr/bin/install -c
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@@ -34,8 +34,8 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = sparc-sun-solaris2.9 build_triplet = x86_64-unknown-linux-gnu
host_triplet = sparc-sun-solaris2.9 host_triplet = x86_64-unknown-linux-gnu
DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \ DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/config.h.in \ $(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/Makefile.am.common $(top_srcdir)/Makefile.am.common
@@ -109,11 +109,11 @@ INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL} INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
LDFLAGS = LDFLAGS =
LIBOBJS = err$U.o strsep$U.o arp-ioctl$U.o eth-dlpi$U.o fw-none$U.o intf$U.o ip-cooked$U.o route-bsd$U.o tun-none$U.o LIBOBJS = strlcat$U.o strlcpy$U.o arp-ioctl$U.o eth-linux$U.o fw-ipchains$U.o intf$U.o ip$U.o route-linux$U.o tun-linux$U.o
LIBS = -lsocket -lnsl LIBS =
LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL = $(SHELL) $(top_builddir)/libtool
LN_S = ln -s LN_S = ln -s
LTLIBOBJS = err$U.lo strsep$U.lo arp-ioctl$U.lo eth-dlpi$U.lo fw-none$U.lo intf$U.lo ip-cooked$U.lo route-bsd$U.lo tun-none$U.lo LTLIBOBJS = strlcat$U.lo strlcpy$U.lo arp-ioctl$U.lo eth-linux$U.lo fw-ipchains$U.lo intf$U.lo ip$U.lo route-linux$U.lo tun-linux$U.lo
MAINT = # MAINT = #
MAINTAINER_MODE_FALSE = MAINTAINER_MODE_FALSE =
MAINTAINER_MODE_TRUE = # MAINTAINER_MODE_TRUE = #
@@ -131,7 +131,7 @@ PYTHON_FALSE =
PYTHON_TRUE = # PYTHON_TRUE = #
RANLIB = ranlib RANLIB = ranlib
SET_MAKE = SET_MAKE =
SHELL = /bin/bash SHELL = /bin/sh
STRIP = strip STRIP = strip
TCLINC = TCLINC =
TCLLIB = TCLLIB =
@@ -155,18 +155,18 @@ am__quote =
am__tar = ${AMTAR} chof - "$$tardir" am__tar = ${AMTAR} chof - "$$tardir"
am__untar = ${AMTAR} xf - am__untar = ${AMTAR} xf -
bindir = ${exec_prefix}/bin bindir = ${exec_prefix}/bin
build = sparc-sun-solaris2.9 build = x86_64-unknown-linux-gnu
build_alias = build_alias =
build_cpu = sparc build_cpu = x86_64
build_os = solaris2.9 build_os = linux-gnu
build_vendor = sun build_vendor = unknown
datadir = ${prefix}/share datadir = ${prefix}/share
exec_prefix = ${prefix} exec_prefix = ${prefix}
host = sparc-sun-solaris2.9 host = x86_64-unknown-linux-gnu
host_alias = host_alias =
host_cpu = sparc host_cpu = x86_64
host_os = solaris2.9 host_os = linux-gnu
host_vendor = sun host_vendor = unknown
includedir = ${prefix}/include includedir = ${prefix}/include
infodir = ${prefix}/info infodir = ${prefix}/info
install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh
@@ -174,7 +174,7 @@ libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec libexecdir = ${exec_prefix}/libexec
localstatedir = ${prefix}/var localstatedir = ${prefix}/var
mandir = ${prefix}/man mandir = ${prefix}/man
mkdir_p = $(mkinstalldirs) mkdir_p = mkdir -p --
oldincludedir = /usr/include oldincludedir = /usr/include
prefix = /usr/local prefix = /usr/local
program_transform_name = s,x,x, program_transform_name = s,x,x,

View File

@@ -2,7 +2,7 @@
/* include/config.h.in. Generated automatically from configure.in by autoheader. */ /* include/config.h.in. Generated automatically from configure.in by autoheader. */
/* Define if arpreq struct has arp_dev. */ /* Define if arpreq struct has arp_dev. */
/* #undef HAVE_ARPREQ_ARP_DEV */ #define HAVE_ARPREQ_ARP_DEV 1
/* Define if you have the Berkeley Packet Filter. */ /* Define if you have the Berkeley Packet Filter. */
/* #undef HAVE_BSD_BPF */ /* #undef HAVE_BSD_BPF */
@@ -11,7 +11,7 @@
#define HAVE_DLFCN_H 1 #define HAVE_DLFCN_H 1
/* Define if you have the `err' function. */ /* Define if you have the `err' function. */
/* #undef HAVE_ERR */ #define HAVE_ERR 1
/* Define if you have the <fcntl.h> header file. */ /* Define if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1 #define HAVE_FCNTL_H 1
@@ -44,13 +44,13 @@
/* #undef HAVE_LIBNM */ /* #undef HAVE_LIBNM */
/* Define if you have the `nsl' library (-lnsl). */ /* Define if you have the `nsl' library (-lnsl). */
#define HAVE_LIBNSL 1 /* #undef HAVE_LIBNSL */
/* Define if you have the `resolv' library (-lresolv). */ /* Define if you have the `resolv' library (-lresolv). */
/* #undef HAVE_LIBRESOLV */ /* #undef HAVE_LIBRESOLV */
/* Define if you have the `socket' library (-lsocket). */ /* Define if you have the `socket' library (-lsocket). */
#define HAVE_LIBSOCKET 1 /* #undef HAVE_LIBSOCKET */
/* Define if you have the `str' library (-lstr). */ /* Define if you have the `str' library (-lstr). */
/* #undef HAVE_LIBSTR */ /* #undef HAVE_LIBSTR */
@@ -59,7 +59,7 @@
/* #undef HAVE_LIBWS2_32 */ /* #undef HAVE_LIBWS2_32 */
/* Define if you have the <linux/if_tun.h> header file. */ /* Define if you have the <linux/if_tun.h> header file. */
/* #undef HAVE_LINUX_IF_TUN_H */ #define HAVE_LINUX_IF_TUN_H 1
/* Define if you have the <linux/ip_fwchains.h> header file. */ /* Define if you have the <linux/ip_fwchains.h> header file. */
/* #undef HAVE_LINUX_IP_FWCHAINS_H */ /* #undef HAVE_LINUX_IP_FWCHAINS_H */
@@ -69,19 +69,19 @@
/* Define if you have the <linux/netfilter_ipv4/ipchains_core.h> header file. /* Define if you have the <linux/netfilter_ipv4/ipchains_core.h> header file.
*/ */
/* #undef HAVE_LINUX_NETFILTER_IPV4_IPCHAINS_CORE_H */ #define HAVE_LINUX_NETFILTER_IPV4_IPCHAINS_CORE_H 1
/* Define if you have Linux PF_PACKET sockets. */ /* Define if you have Linux PF_PACKET sockets. */
/* #undef HAVE_LINUX_PF_PACKET */ #define HAVE_LINUX_PF_PACKET 1
/* Define if you have the Linux /proc filesystem. */ /* Define if you have the Linux /proc filesystem. */
/* #undef HAVE_LINUX_PROCFS */ #define HAVE_LINUX_PROCFS 1
/* Define if you have the <memory.h> header file. */ /* Define if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1 #define HAVE_MEMORY_H 1
/* Define if you have the <netinet/in_var.h> header file. */ /* Define if you have the <netinet/in_var.h> header file. */
#define HAVE_NETINET_IN_VAR_H 1 /* #undef HAVE_NETINET_IN_VAR_H */
/* Define if you have the <netinet/ip_compat.h> header file. */ /* Define if you have the <netinet/ip_compat.h> header file. */
/* #undef HAVE_NETINET_IP_COMPAT_H */ /* #undef HAVE_NETINET_IP_COMPAT_H */
@@ -96,13 +96,13 @@
/* #undef HAVE_NETINET_IP_FW_H */ /* #undef HAVE_NETINET_IP_FW_H */
/* Define if you have the <net/bpf.h> header file. */ /* Define if you have the <net/bpf.h> header file. */
#define HAVE_NET_BPF_H 1 /* #undef HAVE_NET_BPF_H */
/* Define if you have the <net/if_arp.h> header file. */ /* Define if you have the <net/if_arp.h> header file. */
#define HAVE_NET_IF_ARP_H 1 #define HAVE_NET_IF_ARP_H 1
/* Define if you have the <net/if_dl.h> header file. */ /* Define if you have the <net/if_dl.h> header file. */
#define HAVE_NET_IF_DL_H 1 /* #undef HAVE_NET_IF_DL_H */
/* Define if you have the <net/if.h> header file. */ /* Define if you have the <net/if.h> header file. */
#define HAVE_NET_IF_H 1 #define HAVE_NET_IF_H 1
@@ -129,13 +129,13 @@
#define HAVE_NET_ROUTE_H 1 #define HAVE_NET_ROUTE_H 1
/* Define if you have cooked raw IP sockets. */ /* Define if you have cooked raw IP sockets. */
#define HAVE_RAWIP_COOKED 1 /* #undef HAVE_RAWIP_COOKED */
/* Define if raw IP sockets require host byte ordering for ip_off, ip_len. */ /* Define if raw IP sockets require host byte ordering for ip_off, ip_len. */
/* #undef HAVE_RAWIP_HOST_OFFLEN */ /* #undef HAVE_RAWIP_HOST_OFFLEN */
/* Define if <net/route.h> has rt_msghdr struct. */ /* Define if <net/route.h> has rt_msghdr struct. */
#define HAVE_ROUTE_RT_MSGHDR 1 /* #undef HAVE_ROUTE_RT_MSGHDR */
/* Define if <netinet/in.h> has sockaddr_in6 struct. */ /* Define if <netinet/in.h> has sockaddr_in6 struct. */
#define HAVE_SOCKADDR_IN6 1 #define HAVE_SOCKADDR_IN6 1
@@ -144,13 +144,13 @@
/* #undef HAVE_SOCKADDR_SA_LEN */ /* #undef HAVE_SOCKADDR_SA_LEN */
/* Define if you have the <stdint.h> header file. */ /* Define if you have the <stdint.h> header file. */
/* #undef HAVE_STDINT_H */ #define HAVE_STDINT_H 1
/* Define if you have the <stdlib.h> header file. */ /* Define if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1 #define HAVE_STDLIB_H 1
/* Define if you have SNMP MIB2 STREAMS. */ /* Define if you have SNMP MIB2 STREAMS. */
#define HAVE_STREAMS_MIB2 1 /* #undef HAVE_STREAMS_MIB2 */
/* Define if you have route(7) STREAMS. */ /* Define if you have route(7) STREAMS. */
/* #undef HAVE_STREAMS_ROUTE */ /* #undef HAVE_STREAMS_ROUTE */
@@ -162,19 +162,19 @@
#define HAVE_STRING_H 1 #define HAVE_STRING_H 1
/* Define if you have the `strlcat' function. */ /* Define if you have the `strlcat' function. */
#define HAVE_STRLCAT 1 /* #undef HAVE_STRLCAT */
/* Define if you have the `strlcpy' function. */ /* Define if you have the `strlcpy' function. */
#define HAVE_STRLCPY 1 /* #undef HAVE_STRLCPY */
/* Define if you have the <stropts.h> header file. */ /* Define if you have the <stropts.h> header file. */
#define HAVE_STROPTS_H 1 #define HAVE_STROPTS_H 1
/* Define if you have the `strsep' function. */ /* Define if you have the `strsep' function. */
/* #undef HAVE_STRSEP */ #define HAVE_STRSEP 1
/* Define if you have the <sys/bufmod.h> header file. */ /* Define if you have the <sys/bufmod.h> header file. */
#define HAVE_SYS_BUFMOD_H 1 /* #undef HAVE_SYS_BUFMOD_H */
/* Define if you have the <sys/dlpihdr.h> header file. */ /* Define if you have the <sys/dlpihdr.h> header file. */
/* #undef HAVE_SYS_DLPIHDR_H */ /* #undef HAVE_SYS_DLPIHDR_H */
@@ -183,7 +183,7 @@
/* #undef HAVE_SYS_DLPI_EXT_H */ /* #undef HAVE_SYS_DLPI_EXT_H */
/* Define if you have the <sys/dlpi.h> header file. */ /* Define if you have the <sys/dlpi.h> header file. */
#define HAVE_SYS_DLPI_H 1 /* #undef HAVE_SYS_DLPI_H */
/* Define if you have the <sys/ioctl.h> header file. */ /* Define if you have the <sys/ioctl.h> header file. */
#define HAVE_SYS_IOCTL_H 1 #define HAVE_SYS_IOCTL_H 1
@@ -198,13 +198,13 @@
#define HAVE_SYS_SOCKET_H 1 #define HAVE_SYS_SOCKET_H 1
/* Define if you have the <sys/sockio.h> header file. */ /* Define if you have the <sys/sockio.h> header file. */
#define HAVE_SYS_SOCKIO_H 1 /* #undef HAVE_SYS_SOCKIO_H */
/* Define if you have the <sys/stat.h> header file. */ /* Define if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1 #define HAVE_SYS_STAT_H 1
/* Define if you have the <sys/sysctl.h> header file. */ /* Define if you have the <sys/sysctl.h> header file. */
/* #undef HAVE_SYS_SYSCTL_H */ #define HAVE_SYS_SYSCTL_H 1
/* Define if you have the <sys/time.h> header file. */ /* Define if you have the <sys/time.h> header file. */
#define HAVE_SYS_TIME_H 1 #define HAVE_SYS_TIME_H 1

View File

@@ -22,7 +22,7 @@ pkglibdir = $(libdir)/libdnet
pkgincludedir = $(includedir)/libdnet pkgincludedir = $(includedir)/libdnet
top_builddir = ../.. top_builddir = ../..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = ../../config/install-sh -c INSTALL = /usr/bin/install -c
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@@ -34,8 +34,8 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = sparc-sun-solaris2.9 build_triplet = x86_64-unknown-linux-gnu
host_triplet = sparc-sun-solaris2.9 host_triplet = x86_64-unknown-linux-gnu
DIST_COMMON = $(dnetinclude_HEADERS) $(srcdir)/Makefile.am \ DIST_COMMON = $(dnetinclude_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/Makefile.am.common $(srcdir)/Makefile.in $(top_srcdir)/Makefile.am.common
subdir = include/dnet subdir = include/dnet
@@ -101,11 +101,11 @@ INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL} INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
LDFLAGS = LDFLAGS =
LIBOBJS = err$U.o strsep$U.o arp-ioctl$U.o eth-dlpi$U.o fw-none$U.o intf$U.o ip-cooked$U.o route-bsd$U.o tun-none$U.o LIBOBJS = strlcat$U.o strlcpy$U.o arp-ioctl$U.o eth-linux$U.o fw-ipchains$U.o intf$U.o ip$U.o route-linux$U.o tun-linux$U.o
LIBS = -lsocket -lnsl LIBS =
LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL = $(SHELL) $(top_builddir)/libtool
LN_S = ln -s LN_S = ln -s
LTLIBOBJS = err$U.lo strsep$U.lo arp-ioctl$U.lo eth-dlpi$U.lo fw-none$U.lo intf$U.lo ip-cooked$U.lo route-bsd$U.lo tun-none$U.lo LTLIBOBJS = strlcat$U.lo strlcpy$U.lo arp-ioctl$U.lo eth-linux$U.lo fw-ipchains$U.lo intf$U.lo ip$U.lo route-linux$U.lo tun-linux$U.lo
MAINT = # MAINT = #
MAINTAINER_MODE_FALSE = MAINTAINER_MODE_FALSE =
MAINTAINER_MODE_TRUE = # MAINTAINER_MODE_TRUE = #
@@ -123,7 +123,7 @@ PYTHON_FALSE =
PYTHON_TRUE = # PYTHON_TRUE = #
RANLIB = ranlib RANLIB = ranlib
SET_MAKE = SET_MAKE =
SHELL = /bin/bash SHELL = /bin/sh
STRIP = strip STRIP = strip
TCLINC = TCLINC =
TCLLIB = TCLLIB =
@@ -147,18 +147,18 @@ am__quote =
am__tar = ${AMTAR} chof - "$$tardir" am__tar = ${AMTAR} chof - "$$tardir"
am__untar = ${AMTAR} xf - am__untar = ${AMTAR} xf -
bindir = ${exec_prefix}/bin bindir = ${exec_prefix}/bin
build = sparc-sun-solaris2.9 build = x86_64-unknown-linux-gnu
build_alias = build_alias =
build_cpu = sparc build_cpu = x86_64
build_os = solaris2.9 build_os = linux-gnu
build_vendor = sun build_vendor = unknown
datadir = ${prefix}/share datadir = ${prefix}/share
exec_prefix = ${prefix} exec_prefix = ${prefix}
host = sparc-sun-solaris2.9 host = x86_64-unknown-linux-gnu
host_alias = host_alias =
host_cpu = sparc host_cpu = x86_64
host_os = solaris2.9 host_os = linux-gnu
host_vendor = sun host_vendor = unknown
includedir = ${prefix}/include includedir = ${prefix}/include
infodir = ${prefix}/info infodir = ${prefix}/info
install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh
@@ -166,7 +166,7 @@ libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec libexecdir = ${exec_prefix}/libexec
localstatedir = ${prefix}/var localstatedir = ${prefix}/var
mandir = ${prefix}/man mandir = ${prefix}/man
mkdir_p = $(mkinstalldirs) mkdir_p = mkdir -p --
oldincludedir = /usr/include oldincludedir = /usr/include
prefix = /usr/local prefix = /usr/local
program_transform_name = s,x,x, program_transform_name = s,x,x,

View File

@@ -1,4 +1,4 @@
#! /bin/bash #! /bin/sh
# libtoolT - Provide generalized library-building support services. # libtoolT - Provide generalized library-building support services.
# Generated automatically by (GNU libdnet 1.10) # Generated automatically by (GNU libdnet 1.10)
@@ -40,14 +40,14 @@ Xsed="/bin/sed -e s/^X//"
if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
# The names of the tagged configurations supported by this script. # The names of the tagged configurations supported by this script.
available_tags="available_tags= CXX F77" available_tags=" CXX F77"
# ### BEGIN LIBTOOL CONFIG # ### BEGIN LIBTOOL CONFIG
# Libtool was configured on host ultra: # Libtool was configured on host flog.yuma.net:
# Shell to use when invoking shell scripts. # Shell to use when invoking shell scripts.
SHELL="/bin/bash" SHELL="/bin/sh"
# Whether or not to build shared libraries. # Whether or not to build shared libraries.
build_libtool_libs=yes build_libtool_libs=yes
@@ -56,17 +56,17 @@ build_libtool_libs=yes
build_old_libs=yes build_old_libs=yes
# Whether or not to add -lc for building shared libraries. # Whether or not to add -lc for building shared libraries.
build_libtool_need_lc=yes build_libtool_need_lc=no
# Whether or not to disallow shared libs when runtime libs are static # Whether or not to disallow shared libs when runtime libs are static
allow_libtool_libs_with_static_runtimes=no allow_libtool_libs_with_static_runtimes=no
# Whether or not to optimize for fast installation. # Whether or not to optimize for fast installation.
fast_install=needless fast_install=yes
# The host system. # The host system.
host_alias= host_alias=
host=sparc-sun-solaris2.9 host=x86_64-unknown-linux-gnu
# An echo program that does not interpret backslashes. # An echo program that does not interpret backslashes.
echo="echo" echo="echo"
@@ -88,13 +88,13 @@ with_gcc=yes
EGREP="grep -E" EGREP="grep -E"
# The linker used to build libraries. # The linker used to build libraries.
LD="/usr/ccs/bin/ld" LD="/usr/bin/ld -m elf_x86_64"
# Whether we need hard or soft links. # Whether we need hard or soft links.
LN_S="ln -s" LN_S="ln -s"
# A BSD-compatible nm program. # A BSD-compatible nm program.
NM="/usr/ccs/bin/nm -p" NM="/usr/bin/nm -B"
# A symbol stripping program # A symbol stripping program
STRIP="strip" STRIP="strip"
@@ -138,7 +138,7 @@ pic_flag=" -fPIC -DPIC"
pic_mode=default pic_mode=default
# What is the maximum length of a command? # What is the maximum length of a command?
max_cmd_len=262144 max_cmd_len=32768
# Does compiler simultaneously support -c and -o options? # Does compiler simultaneously support -c and -o options?
compiler_c_o="yes" compiler_c_o="yes"
@@ -168,10 +168,10 @@ link_static_flag="-static"
no_builtin_flag=" -fno-builtin" no_builtin_flag=" -fno-builtin"
# Compiler flag to allow reflexive dlopens. # Compiler flag to allow reflexive dlopens.
export_dynamic_flag_spec="" export_dynamic_flag_spec="\${wl}--export-dynamic"
# Compiler flag to generate shared objects directly from archives. # Compiler flag to generate shared objects directly from archives.
whole_archive_flag_spec="-z allextract\$convenience -z defaultextract" whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive"
# Compiler flag to generate thread-safe objects. # Compiler flag to generate thread-safe objects.
thread_safe_flag_spec="" thread_safe_flag_spec=""
@@ -202,10 +202,12 @@ old_archive_from_new_cmds=""
old_archive_from_expsyms_cmds="" old_archive_from_expsyms_cmds=""
# Commands used to build and install a shared archive. # Commands used to build and install a shared archive.
archive_cmds="\$CC -shared \${wl}-h \${wl}\$soname -o \$lib \$libobjs \$deplibs \$compiler_flags" archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib"
archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$lib.exp~cat \$export_symbols | \$SED -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$lib.exp~\$echo \\\"local: *; };\\\" >> \$lib.exp~ archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$output_objdir/\$libname.ver~
\$CC -shared \${wl}-M \${wl}\$lib.exp \${wl}-h \${wl}\$soname -o \$lib \$libobjs \$deplibs \$compiler_flags~\$rm \$lib.exp" cat \$export_symbols | sed -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$output_objdir/\$libname.ver~
postinstall_cmds="chmod +x \$lib" \$echo \\\"local: *; };\\\" >> \$output_objdir/\$libname.ver~
\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-version-script \${wl}\$output_objdir/\$libname.ver -o \$lib"
postinstall_cmds=""
postuninstall_cmds="" postuninstall_cmds=""
# Commands used to build a loadable module (assumed same as above if empty) # Commands used to build a loadable module (assumed same as above if empty)
@@ -213,8 +215,8 @@ module_cmds=""
module_expsym_cmds="" module_expsym_cmds=""
# Commands to strip libraries. # Commands to strip libraries.
old_striplib="" old_striplib="strip --strip-debug"
striplib="" striplib="strip --strip-unneeded"
# Dependencies to place before the objects being linked to create a # Dependencies to place before the objects being linked to create a
# shared library. # shared library.
@@ -246,16 +248,16 @@ file_magic_cmd="\$MAGIC_CMD"
allow_undefined_flag="" allow_undefined_flag=""
# Flag that forces no undefined symbols. # Flag that forces no undefined symbols.
no_undefined_flag=" -z text" no_undefined_flag=""
# Commands used to finish a libtool library installation in a directory. # Commands used to finish a libtool library installation in a directory.
finish_cmds="" finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir"
# Same as above, but a single script fragment to be evaled but not shown. # Same as above, but a single script fragment to be evaled but not shown.
finish_eval="" finish_eval=""
# Take the output of nm and produce a listing of raw symbols and C names. # Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe="sed -n -e 's/^.*[ ]\\([BDRT][BDRT]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'"
# Transform the output of nm in a proper C declaration # Transform the output of nm in a proper C declaration
global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'" global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'"
@@ -264,13 +266,13 @@ global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'"
global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'" global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'"
# This is the shared library runtime path variable. # This is the shared library runtime path variable.
runpath_var= runpath_var=LD_RUN_PATH
# This is the shared library path variable. # This is the shared library path variable.
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
# Is shlibpath searched before the hard-coded library search path? # Is shlibpath searched before the hard-coded library search path?
shlibpath_overrides_runpath=yes shlibpath_overrides_runpath=no
# How to hardcode a shared library path into an executable. # How to hardcode a shared library path into an executable.
hardcode_action=immediate hardcode_action=immediate
@@ -280,7 +282,7 @@ hardcode_into_libs=yes
# Flag to hardcode $libdir into a binary during linking. # Flag to hardcode $libdir into a binary during linking.
# This must work even if $libdir does not exist. # This must work even if $libdir does not exist.
hardcode_libdir_flag_spec="-R\$libdir" hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir"
# If ld is used when linking, flag to hardcode $libdir into # If ld is used when linking, flag to hardcode $libdir into
# a binary during linking. This must work even if $libdir does # a binary during linking. This must work even if $libdir does
@@ -300,7 +302,7 @@ hardcode_minus_L=no
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
# the resulting binary. # the resulting binary.
hardcode_shlibpath_var=no hardcode_shlibpath_var=unsupported
# Set to yes if building a shared library automatically hardcodes DIR into the library # Set to yes if building a shared library automatically hardcodes DIR into the library
# and all subsequent libraries and executables linked against it. # and all subsequent libraries and executables linked against it.
@@ -308,16 +310,16 @@ hardcode_automatic=no
# Variables whose values should be saved in libtool wrapper scripts and # Variables whose values should be saved in libtool wrapper scripts and
# restored at relink time. # restored at relink time.
variables_saved_for_relink="PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" variables_saved_for_relink="PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
# Whether libtool must link a program against all its dependency libraries. # Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=yes link_all_deplibs=unknown
# Compile-time system search path for libraries # Compile-time system search path for libraries
sys_lib_search_path_spec=" /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/ /usr/lib/gcc/sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../../sparc-sun-solaris2.9/lib/sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../../sparc-sun-solaris2.9/lib/ /usr/ccs/bin/sparc-sun-solaris2.9/3.4.2/ /usr/ccs/bin/ /usr/ccs/lib/sparc-sun-solaris2.9/3.4.2/ /usr/ccs/lib/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../ /lib/sparc-sun-solaris2.9/3.4.2/ /lib/ /usr/lib/sparc-sun-solaris2.9/3.4.2/ /usr/lib/" sys_lib_search_path_spec="/lib64 /usr/lib64 /usr/local/lib64"
# Run-time system search path for libraries # Run-time system search path for libraries
sys_lib_dlsearch_path_spec="/lib /usr/lib" sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 include ld.so.conf.d/*.conf /usr/X11R6/lib /usr/X11R6/lib64 /usr/lib/mysql /usr/lib64/mysql "
# Fix the shell variable $srcfile for the compiler. # Fix the shell variable $srcfile for the compiler.
fix_srcfile_path="" fix_srcfile_path=""
@@ -6763,10 +6765,10 @@ build_old_libs=`case $build_libtool_libs in yes) $echo no;; *) $echo yes;; esac`
# End: # End:
# ### BEGIN LIBTOOL TAG CONFIG: CXX # ### BEGIN LIBTOOL TAG CONFIG: CXX
# Libtool was configured on host ultra: # Libtool was configured on host flog.yuma.net:
# Shell to use when invoking shell scripts. # Shell to use when invoking shell scripts.
SHELL="/bin/bash" SHELL="/bin/sh"
# Whether or not to build shared libraries. # Whether or not to build shared libraries.
build_libtool_libs=yes build_libtool_libs=yes
@@ -6781,11 +6783,11 @@ build_libtool_need_lc=no
allow_libtool_libs_with_static_runtimes=no allow_libtool_libs_with_static_runtimes=no
# Whether or not to optimize for fast installation. # Whether or not to optimize for fast installation.
fast_install=needless fast_install=yes
# The host system. # The host system.
host_alias= host_alias=
host=sparc-sun-solaris2.9 host=x86_64-unknown-linux-gnu
# An echo program that does not interpret backslashes. # An echo program that does not interpret backslashes.
echo="echo" echo="echo"
@@ -6807,13 +6809,13 @@ with_gcc=yes
EGREP="grep -E" EGREP="grep -E"
# The linker used to build libraries. # The linker used to build libraries.
LD="/usr/ccs/bin/ld" LD="/usr/bin/ld -m elf_x86_64"
# Whether we need hard or soft links. # Whether we need hard or soft links.
LN_S="ln -s" LN_S="ln -s"
# A BSD-compatible nm program. # A BSD-compatible nm program.
NM="/usr/ccs/bin/nm -p" NM="/usr/bin/nm -B"
# A symbol stripping program # A symbol stripping program
STRIP="strip" STRIP="strip"
@@ -6857,7 +6859,7 @@ pic_flag=" -fPIC -DPIC"
pic_mode=default pic_mode=default
# What is the maximum length of a command? # What is the maximum length of a command?
max_cmd_len=262144 max_cmd_len=32768
# Does compiler simultaneously support -c and -o options? # Does compiler simultaneously support -c and -o options?
compiler_c_o="yes" compiler_c_o="yes"
@@ -6887,10 +6889,10 @@ link_static_flag="-static"
no_builtin_flag=" -fno-builtin" no_builtin_flag=" -fno-builtin"
# Compiler flag to allow reflexive dlopens. # Compiler flag to allow reflexive dlopens.
export_dynamic_flag_spec="" export_dynamic_flag_spec="\${wl}--export-dynamic"
# Compiler flag to generate shared objects directly from archives. # Compiler flag to generate shared objects directly from archives.
whole_archive_flag_spec="" whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive"
# Compiler flag to generate thread-safe objects. # Compiler flag to generate thread-safe objects.
thread_safe_flag_spec="" thread_safe_flag_spec=""
@@ -6921,10 +6923,9 @@ old_archive_from_new_cmds=""
old_archive_from_expsyms_cmds="" old_archive_from_expsyms_cmds=""
# Commands used to build and install a shared archive. # Commands used to build and install a shared archive.
archive_cmds="\$CC -shared -nostdlib \$LDFLAGS \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-h \$wl\$soname -o \$lib" archive_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib"
archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$lib.exp~cat \$export_symbols | \$SED -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$lib.exp~\$echo \\\"local: *; };\\\" >> \$lib.exp~ archive_expsym_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib"
\$CC -shared -nostdlib \${wl}-M \$wl\$lib.exp -o \$lib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags~\$rm \$lib.exp" postinstall_cmds=""
postinstall_cmds="chmod +x \$lib"
postuninstall_cmds="" postuninstall_cmds=""
# Commands used to build a loadable module (assumed same as above if empty) # Commands used to build a loadable module (assumed same as above if empty)
@@ -6932,16 +6933,16 @@ module_cmds=""
module_expsym_cmds="" module_expsym_cmds=""
# Commands to strip libraries. # Commands to strip libraries.
old_striplib="" old_striplib="strip --strip-debug"
striplib="" striplib="strip --strip-unneeded"
# Dependencies to place before the objects being linked to create a # Dependencies to place before the objects being linked to create a
# shared library. # shared library.
predep_objects="/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/crti.o /usr/ccs/lib/values-Xa.o /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/crtbegin.o" predep_objects="/usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../../../lib64/crti.o /usr/lib/gcc/x86_64-redhat-linux/3.4.3/crtbeginS.o"
# Dependencies to place after the objects being linked to create a # Dependencies to place after the objects being linked to create a
# shared library. # shared library.
postdep_objects="/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/crtend.o /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/crtn.o" postdep_objects="/usr/lib/gcc/x86_64-redhat-linux/3.4.3/crtendS.o /usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../../../lib64/crtn.o"
# Dependencies to place before the objects being linked to create a # Dependencies to place before the objects being linked to create a
# shared library. # shared library.
@@ -6949,11 +6950,11 @@ predeps=""
# Dependencies to place after the objects being linked to create a # Dependencies to place after the objects being linked to create a
# shared library. # shared library.
postdeps="-lstdc++ -lm -lgcc_s -lgcc_s" postdeps="-lstdc++ -lm -lgcc_s -lc -lgcc_s"
# The library search path used internally by the compiler when linking # The library search path used internally by the compiler when linking
# a shared library. # a shared library.
compiler_lib_search_path="-L/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2 -L/usr/ccs/bin -L/usr/ccs/lib -L/usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../.." compiler_lib_search_path="-L/usr/lib/gcc/x86_64-redhat-linux/3.4.3 -L/usr/lib/gcc/x86_64-redhat-linux/3.4.3 -L/usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../../../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/3.4.3/../../.. -L/lib/../lib64 -L/usr/lib/../lib64"
# Method to check whether dependent libraries are shared objects. # Method to check whether dependent libraries are shared objects.
deplibs_check_method="pass_all" deplibs_check_method="pass_all"
@@ -6965,16 +6966,16 @@ file_magic_cmd="\$MAGIC_CMD"
allow_undefined_flag="" allow_undefined_flag=""
# Flag that forces no undefined symbols. # Flag that forces no undefined symbols.
no_undefined_flag=" \${wl}-z \${wl}defs" no_undefined_flag=""
# Commands used to finish a libtool library installation in a directory. # Commands used to finish a libtool library installation in a directory.
finish_cmds="" finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir"
# Same as above, but a single script fragment to be evaled but not shown. # Same as above, but a single script fragment to be evaled but not shown.
finish_eval="" finish_eval=""
# Take the output of nm and produce a listing of raw symbols and C names. # Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe="sed -n -e 's/^.*[ ]\\([BDRT][BDRT]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'"
# Transform the output of nm in a proper C declaration # Transform the output of nm in a proper C declaration
global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'" global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'"
@@ -6983,13 +6984,13 @@ global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'"
global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'" global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'"
# This is the shared library runtime path variable. # This is the shared library runtime path variable.
runpath_var= runpath_var=LD_RUN_PATH
# This is the shared library path variable. # This is the shared library path variable.
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
# Is shlibpath searched before the hard-coded library search path? # Is shlibpath searched before the hard-coded library search path?
shlibpath_overrides_runpath=yes shlibpath_overrides_runpath=no
# How to hardcode a shared library path into an executable. # How to hardcode a shared library path into an executable.
hardcode_action=immediate hardcode_action=immediate
@@ -6999,7 +7000,7 @@ hardcode_into_libs=yes
# Flag to hardcode $libdir into a binary during linking. # Flag to hardcode $libdir into a binary during linking.
# This must work even if $libdir does not exist. # This must work even if $libdir does not exist.
hardcode_libdir_flag_spec="\${wl}-R \$wl\$libdir" hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir"
# If ld is used when linking, flag to hardcode $libdir into # If ld is used when linking, flag to hardcode $libdir into
# a binary during linking. This must work even if $libdir does # a binary during linking. This must work even if $libdir does
@@ -7027,16 +7028,16 @@ hardcode_automatic=no
# Variables whose values should be saved in libtool wrapper scripts and # Variables whose values should be saved in libtool wrapper scripts and
# restored at relink time. # restored at relink time.
variables_saved_for_relink="PATH LD_LIBRARY_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
# Whether libtool must link a program against all its dependency libraries. # Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=unknown link_all_deplibs=unknown
# Compile-time system search path for libraries # Compile-time system search path for libraries
sys_lib_search_path_spec=" /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/ /usr/lib/gcc/sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../../sparc-sun-solaris2.9/lib/sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../../sparc-sun-solaris2.9/lib/ /usr/ccs/bin/sparc-sun-solaris2.9/3.4.2/ /usr/ccs/bin/ /usr/ccs/lib/sparc-sun-solaris2.9/3.4.2/ /usr/ccs/lib/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../ /lib/sparc-sun-solaris2.9/3.4.2/ /lib/ /usr/lib/sparc-sun-solaris2.9/3.4.2/ /usr/lib/" sys_lib_search_path_spec="/lib64 /usr/lib64 /usr/local/lib64"
# Run-time system search path for libraries # Run-time system search path for libraries
sys_lib_dlsearch_path_spec="/lib /usr/lib" sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 include ld.so.conf.d/*.conf /usr/X11R6/lib /usr/X11R6/lib64 /usr/lib/mysql /usr/lib64/mysql "
# Fix the shell variable $srcfile for the compiler. # Fix the shell variable $srcfile for the compiler.
fix_srcfile_path="" fix_srcfile_path=""
@@ -7060,10 +7061,10 @@ include_expsyms=""
# ### BEGIN LIBTOOL TAG CONFIG: F77 # ### BEGIN LIBTOOL TAG CONFIG: F77
# Libtool was configured on host ultra: # Libtool was configured on host flog.yuma.net:
# Shell to use when invoking shell scripts. # Shell to use when invoking shell scripts.
SHELL="/bin/bash" SHELL="/bin/sh"
# Whether or not to build shared libraries. # Whether or not to build shared libraries.
build_libtool_libs=yes build_libtool_libs=yes
@@ -7078,11 +7079,11 @@ build_libtool_need_lc=no
allow_libtool_libs_with_static_runtimes=no allow_libtool_libs_with_static_runtimes=no
# Whether or not to optimize for fast installation. # Whether or not to optimize for fast installation.
fast_install=needless fast_install=yes
# The host system. # The host system.
host_alias= host_alias=
host=sparc-sun-solaris2.9 host=x86_64-unknown-linux-gnu
# An echo program that does not interpret backslashes. # An echo program that does not interpret backslashes.
echo="echo" echo="echo"
@@ -7104,13 +7105,13 @@ with_gcc=yes
EGREP="grep -E" EGREP="grep -E"
# The linker used to build libraries. # The linker used to build libraries.
LD="/usr/ccs/bin/ld" LD="/usr/bin/ld -m elf_x86_64"
# Whether we need hard or soft links. # Whether we need hard or soft links.
LN_S="ln -s" LN_S="ln -s"
# A BSD-compatible nm program. # A BSD-compatible nm program.
NM="/usr/ccs/bin/nm -p" NM="/usr/bin/nm -B"
# A symbol stripping program # A symbol stripping program
STRIP="strip" STRIP="strip"
@@ -7154,7 +7155,7 @@ pic_flag=" -fPIC"
pic_mode=default pic_mode=default
# What is the maximum length of a command? # What is the maximum length of a command?
max_cmd_len=262144 max_cmd_len=32768
# Does compiler simultaneously support -c and -o options? # Does compiler simultaneously support -c and -o options?
compiler_c_o="yes" compiler_c_o="yes"
@@ -7184,10 +7185,10 @@ link_static_flag="-static"
no_builtin_flag="" no_builtin_flag=""
# Compiler flag to allow reflexive dlopens. # Compiler flag to allow reflexive dlopens.
export_dynamic_flag_spec="" export_dynamic_flag_spec="\${wl}--export-dynamic"
# Compiler flag to generate shared objects directly from archives. # Compiler flag to generate shared objects directly from archives.
whole_archive_flag_spec="-z allextract\$convenience -z defaultextract" whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive"
# Compiler flag to generate thread-safe objects. # Compiler flag to generate thread-safe objects.
thread_safe_flag_spec="" thread_safe_flag_spec=""
@@ -7218,10 +7219,12 @@ old_archive_from_new_cmds=""
old_archive_from_expsyms_cmds="" old_archive_from_expsyms_cmds=""
# Commands used to build and install a shared archive. # Commands used to build and install a shared archive.
archive_cmds="\$CC -shared \${wl}-h \${wl}\$soname -o \$lib \$libobjs \$deplibs \$compiler_flags" archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib"
archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$lib.exp~cat \$export_symbols | \$SED -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$lib.exp~\$echo \\\"local: *; };\\\" >> \$lib.exp~ archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$output_objdir/\$libname.ver~
\$CC -shared \${wl}-M \${wl}\$lib.exp \${wl}-h \${wl}\$soname -o \$lib \$libobjs \$deplibs \$compiler_flags~\$rm \$lib.exp" cat \$export_symbols | sed -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$output_objdir/\$libname.ver~
postinstall_cmds="chmod +x \$lib" \$echo \\\"local: *; };\\\" >> \$output_objdir/\$libname.ver~
\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-version-script \${wl}\$output_objdir/\$libname.ver -o \$lib"
postinstall_cmds=""
postuninstall_cmds="" postuninstall_cmds=""
# Commands used to build a loadable module (assumed same as above if empty) # Commands used to build a loadable module (assumed same as above if empty)
@@ -7229,8 +7232,8 @@ module_cmds=""
module_expsym_cmds="" module_expsym_cmds=""
# Commands to strip libraries. # Commands to strip libraries.
old_striplib="" old_striplib="strip --strip-debug"
striplib="" striplib="strip --strip-unneeded"
# Dependencies to place before the objects being linked to create a # Dependencies to place before the objects being linked to create a
# shared library. # shared library.
@@ -7262,16 +7265,16 @@ file_magic_cmd="\$MAGIC_CMD"
allow_undefined_flag="" allow_undefined_flag=""
# Flag that forces no undefined symbols. # Flag that forces no undefined symbols.
no_undefined_flag=" -z text" no_undefined_flag=""
# Commands used to finish a libtool library installation in a directory. # Commands used to finish a libtool library installation in a directory.
finish_cmds="" finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir"
# Same as above, but a single script fragment to be evaled but not shown. # Same as above, but a single script fragment to be evaled but not shown.
finish_eval="" finish_eval=""
# Take the output of nm and produce a listing of raw symbols and C names. # Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe="sed -n -e 's/^.*[ ]\\([BDRT][BDRT]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'" global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\(\\)\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2\\3 \\3/p'"
# Transform the output of nm in a proper C declaration # Transform the output of nm in a proper C declaration
global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'" global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'"
@@ -7280,13 +7283,13 @@ global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'"
global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'" global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'"
# This is the shared library runtime path variable. # This is the shared library runtime path variable.
runpath_var= runpath_var=LD_RUN_PATH
# This is the shared library path variable. # This is the shared library path variable.
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
# Is shlibpath searched before the hard-coded library search path? # Is shlibpath searched before the hard-coded library search path?
shlibpath_overrides_runpath=yes shlibpath_overrides_runpath=no
# How to hardcode a shared library path into an executable. # How to hardcode a shared library path into an executable.
hardcode_action=immediate hardcode_action=immediate
@@ -7296,7 +7299,7 @@ hardcode_into_libs=yes
# Flag to hardcode $libdir into a binary during linking. # Flag to hardcode $libdir into a binary during linking.
# This must work even if $libdir does not exist. # This must work even if $libdir does not exist.
hardcode_libdir_flag_spec="-R\$libdir" hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir"
# If ld is used when linking, flag to hardcode $libdir into # If ld is used when linking, flag to hardcode $libdir into
# a binary during linking. This must work even if $libdir does # a binary during linking. This must work even if $libdir does
@@ -7316,7 +7319,7 @@ hardcode_minus_L=no
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
# the resulting binary. # the resulting binary.
hardcode_shlibpath_var=no hardcode_shlibpath_var=unsupported
# Set to yes if building a shared library automatically hardcodes DIR into the library # Set to yes if building a shared library automatically hardcodes DIR into the library
# and all subsequent libraries and executables linked against it. # and all subsequent libraries and executables linked against it.
@@ -7324,16 +7327,16 @@ hardcode_automatic=no
# Variables whose values should be saved in libtool wrapper scripts and # Variables whose values should be saved in libtool wrapper scripts and
# restored at relink time. # restored at relink time.
variables_saved_for_relink="PATH LD_LIBRARY_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
# Whether libtool must link a program against all its dependency libraries. # Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=yes link_all_deplibs=unknown
# Compile-time system search path for libraries # Compile-time system search path for libraries
sys_lib_search_path_spec=" /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/ /usr/lib/gcc/sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../../sparc-sun-solaris2.9/lib/sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../../sparc-sun-solaris2.9/lib/ /usr/ccs/bin/sparc-sun-solaris2.9/3.4.2/ /usr/ccs/bin/ /usr/ccs/lib/sparc-sun-solaris2.9/3.4.2/ /usr/ccs/lib/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../sparc-sun-solaris2.9/3.4.2/ /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/../../../ /lib/sparc-sun-solaris2.9/3.4.2/ /lib/ /usr/lib/sparc-sun-solaris2.9/3.4.2/ /usr/lib/" sys_lib_search_path_spec="/lib64 /usr/lib64 /usr/local/lib64"
# Run-time system search path for libraries # Run-time system search path for libraries
sys_lib_dlsearch_path_spec="/lib /usr/lib" sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 include ld.so.conf.d/*.conf /usr/X11R6/lib /usr/X11R6/lib64 /usr/lib/mysql /usr/lib64/mysql "
# Fix the shell variable $srcfile for the compiler. # Fix the shell variable $srcfile for the compiler.
fix_srcfile_path="" fix_srcfile_path=""

View File

@@ -24,7 +24,7 @@ pkglibdir = $(libdir)/libdnet
pkgincludedir = $(includedir)/libdnet pkgincludedir = $(includedir)/libdnet
top_builddir = .. top_builddir = ..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = ../config/install-sh -c INSTALL = /usr/bin/install -c
install_sh_DATA = $(install_sh) -c -m 644 install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c
@@ -36,8 +36,8 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = sparc-sun-solaris2.9 build_triplet = x86_64-unknown-linux-gnu
host_triplet = sparc-sun-solaris2.9 host_triplet = x86_64-unknown-linux-gnu
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/Makefile.am.common arp-bsd.c arp-ioctl.c \ $(top_srcdir)/Makefile.am.common arp-bsd.c arp-ioctl.c \
arp-none.c arp-win32.c err.c eth-bsd.c eth-dlpi.c eth-linux.c \ arp-none.c arp-win32.c err.c eth-bsd.c eth-dlpi.c eth-linux.c \
@@ -65,7 +65,7 @@ am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(libdir)" am__installdirs = "$(DESTDIR)$(libdir)"
libLTLIBRARIES_INSTALL = $(INSTALL) libLTLIBRARIES_INSTALL = $(INSTALL)
LTLIBRARIES = $(lib_LTLIBRARIES) LTLIBRARIES = $(lib_LTLIBRARIES)
libdnet_la_DEPENDENCIES = err$U.lo strsep$U.lo arp-ioctl$U.lo eth-dlpi$U.lo fw-none$U.lo intf$U.lo ip-cooked$U.lo route-bsd$U.lo tun-none$U.lo libdnet_la_DEPENDENCIES = strlcat$U.lo strlcpy$U.lo arp-ioctl$U.lo eth-linux$U.lo fw-ipchains$U.lo intf$U.lo ip$U.lo route-linux$U.lo tun-linux$U.lo
am_libdnet_la_OBJECTS = addr-util.lo addr.lo blob.lo ip-util.lo ip6.lo \ am_libdnet_la_OBJECTS = addr-util.lo addr.lo blob.lo ip-util.lo ip6.lo \
rand.lo rand.lo
libdnet_la_OBJECTS = $(am_libdnet_la_OBJECTS) libdnet_la_OBJECTS = $(am_libdnet_la_OBJECTS)
@@ -123,11 +123,11 @@ INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL} INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
LDFLAGS = LDFLAGS =
LIBOBJS = err$U.o strsep$U.o arp-ioctl$U.o eth-dlpi$U.o fw-none$U.o intf$U.o ip-cooked$U.o route-bsd$U.o tun-none$U.o LIBOBJS = strlcat$U.o strlcpy$U.o arp-ioctl$U.o eth-linux$U.o fw-ipchains$U.o intf$U.o ip$U.o route-linux$U.o tun-linux$U.o
LIBS = -lsocket -lnsl LIBS =
LIBTOOL = $(SHELL) $(top_builddir)/libtool LIBTOOL = $(SHELL) $(top_builddir)/libtool
LN_S = ln -s LN_S = ln -s
LTLIBOBJS = err$U.lo strsep$U.lo arp-ioctl$U.lo eth-dlpi$U.lo fw-none$U.lo intf$U.lo ip-cooked$U.lo route-bsd$U.lo tun-none$U.lo LTLIBOBJS = strlcat$U.lo strlcpy$U.lo arp-ioctl$U.lo eth-linux$U.lo fw-ipchains$U.lo intf$U.lo ip$U.lo route-linux$U.lo tun-linux$U.lo
MAINT = # MAINT = #
MAINTAINER_MODE_FALSE = MAINTAINER_MODE_FALSE =
MAINTAINER_MODE_TRUE = # MAINTAINER_MODE_TRUE = #
@@ -145,7 +145,7 @@ PYTHON_FALSE =
PYTHON_TRUE = # PYTHON_TRUE = #
RANLIB = ranlib RANLIB = ranlib
SET_MAKE = SET_MAKE =
SHELL = /bin/bash SHELL = /bin/sh
STRIP = strip STRIP = strip
TCLINC = TCLINC =
TCLLIB = TCLLIB =
@@ -169,18 +169,18 @@ am__quote =
am__tar = ${AMTAR} chof - "$$tardir" am__tar = ${AMTAR} chof - "$$tardir"
am__untar = ${AMTAR} xf - am__untar = ${AMTAR} xf -
bindir = ${exec_prefix}/bin bindir = ${exec_prefix}/bin
build = sparc-sun-solaris2.9 build = x86_64-unknown-linux-gnu
build_alias = build_alias =
build_cpu = sparc build_cpu = x86_64
build_os = solaris2.9 build_os = linux-gnu
build_vendor = sun build_vendor = unknown
datadir = ${prefix}/share datadir = ${prefix}/share
exec_prefix = ${prefix} exec_prefix = ${prefix}
host = sparc-sun-solaris2.9 host = x86_64-unknown-linux-gnu
host_alias = host_alias =
host_cpu = sparc host_cpu = x86_64
host_os = solaris2.9 host_os = linux-gnu
host_vendor = sun host_vendor = unknown
includedir = ${prefix}/include includedir = ${prefix}/include
infodir = ${prefix}/info infodir = ${prefix}/info
install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh install_sh = /home/fyodor/nmap/libdnet-stripped/config/install-sh
@@ -188,7 +188,7 @@ libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec libexecdir = ${exec_prefix}/libexec
localstatedir = ${prefix}/var localstatedir = ${prefix}/var
mandir = ${prefix}/man mandir = ${prefix}/man
mkdir_p = $(mkinstalldirs) mkdir_p = mkdir -p --
oldincludedir = /usr/include oldincludedir = /usr/include
prefix = /usr/local prefix = /usr/local
program_transform_name = s,x,x, program_transform_name = s,x,x,
@@ -202,7 +202,7 @@ DISTCLEANFILES = *~
lib_LTLIBRARIES = libdnet.la lib_LTLIBRARIES = libdnet.la
libdnet_la_SOURCES = addr-util.c addr.c blob.c ip-util.c ip6.c rand.c libdnet_la_SOURCES = addr-util.c addr.c blob.c ip-util.c ip6.c rand.c
EXTRA_libdnet_la_SOURCES = EXTRA_libdnet_la_SOURCES =
libdnet_la_LIBADD = err$U.lo strsep$U.lo arp-ioctl$U.lo eth-dlpi$U.lo fw-none$U.lo intf$U.lo ip-cooked$U.lo route-bsd$U.lo tun-none$U.lo libdnet_la_LIBADD = strlcat$U.lo strlcpy$U.lo arp-ioctl$U.lo eth-linux$U.lo fw-ipchains$U.lo intf$U.lo ip$U.lo route-linux$U.lo tun-linux$U.lo
libdnet_la_LDFLAGS = -version-info 1:0:0 libdnet_la_LDFLAGS = -version-info 1:0:0
all: all-am all: all-am

54
nmap.cc
View File

@@ -106,6 +106,7 @@
#include "idle_scan.h" #include "idle_scan.h"
#include "timing.h" #include "timing.h"
#include "NmapOps.h" #include "NmapOps.h"
#include "MACLookup.h"
using namespace std; using namespace std;
@@ -233,6 +234,7 @@ int nmap_main(int argc, char *argv[]) {
source addresses? */ source addresses? */
unsigned int ideal_scan_group_sz = 0; unsigned int ideal_scan_group_sz = 0;
char hostname[MAXHOSTNAMELEN + 1] = ""; char hostname[MAXHOSTNAMELEN + 1] = "";
const char *spoofmac = NULL;
time_t timep; time_t timep;
char mytime[128]; char mytime[128];
struct sockaddr_storage ss; struct sockaddr_storage ss;
@@ -288,6 +290,7 @@ int nmap_main(int argc, char *argv[]) {
{"mtu", required_argument, 0, 0}, {"mtu", required_argument, 0, 0},
{"append_output", no_argument, 0, 0}, {"append_output", no_argument, 0, 0},
{"noninteractive", no_argument, 0, 0}, {"noninteractive", no_argument, 0, 0},
{"spoof_mac", required_argument, 0, 0},
{"ttl", required_argument, 0, 0}, /* Time to live */ {"ttl", required_argument, 0, 0}, /* Time to live */
{"allports", no_argument, 0, 0}, {"allports", no_argument, 0, 0},
#ifdef WIN32 #ifdef WIN32
@@ -409,6 +412,10 @@ int nmap_main(int argc, char *argv[]) {
o.append_output = 1; o.append_output = 1;
} else if (strcmp(long_options[option_index].name, "noninteractive") == 0) { } else if (strcmp(long_options[option_index].name, "noninteractive") == 0) {
/* Do nothing */ /* Do nothing */
} else if (strcmp(long_options[option_index].name, "spoof_mac") == 0) {
/* I need to deal with this later, once I'm sure that I have output
files set up, --datadir, etc. */
spoofmac = optarg;
} else if (strcmp(long_options[option_index].name, "allports") == 0) { } else if (strcmp(long_options[option_index].name, "allports") == 0) {
o.override_excludeports = 1; o.override_excludeports = 1;
} else if (strcmp(long_options[option_index].name, "scan_delay") == 0) { } else if (strcmp(long_options[option_index].name, "scan_delay") == 0) {
@@ -826,6 +833,53 @@ int nmap_main(int argc, char *argv[]) {
fatal("You cannot use -F (fast scan) or -p (explicit port selection) with PING scan or LIST scan"); fatal("You cannot use -F (fast scan) or -p (explicit port selection) with PING scan or LIST scan");
} }
if (spoofmac) {
u8 mac_data[6];
int pos = 0; /* Next index of mac_data to fill in */
char tmphex[3];
/* A zero means set it all randomly. Anything that is all digits
or colons is treated as a prefix, with remaining characters for
the 6-byte MAC (if any) chosen randomly. Otherwise, it is
treated as a vendor string for lookup in nmap-mac-prefixes */
if (strcmp(spoofmac, "0") == 0) {
pos = 0;
} else {
const char *p = spoofmac;
while(*p) {
if (*p == ':') p++;
if (isxdigit(*p) && isxdigit(*(p+1))) {
if (pos >= 6) fatal("Bogus --spoof_mac value encountered (%s) -- only up to 6 bytes permitted", spoofmac);
tmphex[0] = *p; tmphex[1] = *(p+1); tmphex[2] = '\0';
mac_data[pos] = (u8) strtol(tmphex, NULL, 16);
pos++;
p += 2;
} else break;
}
if (*p) {
/* Failed to parse it as a MAC prefix -- treating as a vendor substring instead */
if (!MACCorp2Prefix(spoofmac, mac_data))
fatal("Could not parse as a prefix nor find as a vendor substring the given --spoof_mac argument: %s. If you are giving hex digits, there must be an even number of them.", spoofmac);
pos = 3;
}
}
if (pos < 6) {
get_random_bytes(mac_data + pos, 6 - pos);
}
/* Got the new MAC! */
const char *vend = MACPrefix2Corp(mac_data);
log_write(LOG_NORMAL|LOG_SKID|LOG_STDOUT,
"Spoofing MAC address %02X:%02X:%02X:%02X:%02X:%02X (%s)\n",
mac_data[0], mac_data[1], mac_data[2], mac_data[3], mac_data[4],
mac_data[5], vend? vend : "No registered vendor");
o.setSpoofMACAddress(mac_data);
/* If they want to spoof the MAC address, we should at least make
some effort to actually send raw ethernet frames rather than IP
packets (which would use the real IP */
if (o.sendpref != PACKET_SEND_IP_STRONG)
o.sendpref = PACKET_SEND_ETH_STRONG;
}
if (!ports) { if (!ports) {
if (o.ipprotscan) { if (o.ipprotscan) {
ports = getdefaultprots(); ports = getdefaultprots();

1
nmap.h
View File

@@ -364,6 +364,7 @@ void *realloc();
#define PINGTYPE_UDP 512 #define PINGTYPE_UDP 512
#define PINGTYPE_ARP 1024 #define PINGTYPE_ARP 1024
#define DEFAULT_PING_TYPES PINGTYPE_TCP|PINGTYPE_TCP_USE_ACK|PINGTYPE_ICMP_PING
/* TCP/IP ISN sequence prediction classes */ /* TCP/IP ISN sequence prediction classes */
#define SEQ_UNKNOWN 0 #define SEQ_UNKNOWN 0
#define SEQ_64K 1 #define SEQ_64K 1

View File

@@ -356,7 +356,9 @@ do {
} }
hs->hostbatch[hidx]->setIfType(rnfo.ii.device_type); hs->hostbatch[hidx]->setIfType(rnfo.ii.device_type);
if (rnfo.ii.device_type == devt_ethernet) { if (rnfo.ii.device_type == devt_ethernet) {
hs->hostbatch[hidx]->setSrcMACAddress(rnfo.ii.mac); if (o.spoofMACAddress())
hs->hostbatch[hidx]->setSrcMACAddress(o.spoofMACAddress());
else hs->hostbatch[hidx]->setSrcMACAddress(rnfo.ii.mac);
} }
hs->hostbatch[hidx]->setSourceSockAddr(&rnfo.srcaddr, sizeof(rnfo.srcaddr)); hs->hostbatch[hidx]->setSourceSockAddr(&rnfo.srcaddr, sizeof(rnfo.srcaddr));
if (hidx == 0) /* Because later ones can have different src addy and be cut off group */ if (hidx == 0) /* Because later ones can have different src addy and be cut off group */
@@ -430,8 +432,11 @@ if (hs->randomize) {
initialize_timeout_info(&hs->hostbatch[i]->to); initialize_timeout_info(&hs->hostbatch[i]->to);
hs->hostbatch[i]->flags |= HOST_UP; /*hostbatch[i].up = 1;*/ hs->hostbatch[i]->flags |= HOST_UP; /*hostbatch[i].up = 1;*/
} }
} else if (!arpping_done) } else if (!arpping_done)
massping(hs->hostbatch, hs->current_batch_sz, ports, *pingtype); if (*pingtype & PINGTYPE_ARP) /* A host that we can't arp scan ... maybe localhost */
massping(hs->hostbatch, hs->current_batch_sz, ports, DEFAULT_PING_TYPES);
else
massping(hs->hostbatch, hs->current_batch_sz, ports, *pingtype);
return hs->hostbatch[hs->next_batch_no++]; return hs->hostbatch[hs->next_batch_no++];
} }