From scm-commit at wald.intevation.org Fri Aug 1 09:33:04 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 09:33:04 +0200 (CEST)
Subject: [Openvas-commits] r1090 - trunk/openvas-client
Message-ID: <20080801073304.77FBF40714@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 09:33:04 +0200 (Fri, 01 Aug 2008)
New Revision: 1090
Modified:
trunk/openvas-client/ChangeLog
Log:
Added forgotten ChangeLog entry.
Modified: trunk/openvas-client/ChangeLog
===================================================================
--- trunk/openvas-client/ChangeLog 2008-07-31 14:48:30 UTC (rev 1089)
+++ trunk/openvas-client/ChangeLog 2008-08-01 07:33:04 UTC (rev 1090)
@@ -1,3 +1,7 @@
+2008-07-31 Vlatko Kosturjak
+
+ * po/hr.po: New. Initial Croatian translation of OpenVAS client.
+
2008-07-19 Jan Wagner
* packaging/debian/changelog, packaging/debian/control,
From scm-commit at wald.intevation.org Fri Aug 1 19:57:26 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 19:57:26 +0200 (CEST)
Subject: [Openvas-commits] r1091 - trunk/doc
Message-ID: <20080801175726.43A344072C@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 19:57:26 +0200 (Fri, 01 Aug 2008)
New Revision: 1091
Modified:
trunk/doc/howto-release.txt
Log:
Fixed typo.
Modified: trunk/doc/howto-release.txt
===================================================================
--- trunk/doc/howto-release.txt 2008-08-01 07:33:04 UTC (rev 1090)
+++ trunk/doc/howto-release.txt 2008-08-01 17:57:26 UTC (rev 1091)
@@ -15,7 +15,7 @@
5. $ make dist
and test the tarball again.
- This test oftern uncovers dependency problems that did not occur
+ This test often uncovers dependency problems that did not occur
in home development enviroment. So, do the tests carefully in
a fresh environment.
From scm-commit at wald.intevation.org Fri Aug 1 19:58:36 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 19:58:36 +0200 (CEST)
Subject: [Openvas-commits] r1092 - trunk
Message-ID: <20080801175836.33D644072C@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 19:58:36 +0200 (Fri, 01 Aug 2008)
New Revision: 1092
Added:
trunk/openvas-compendium/
Removed:
trunk/openvas-manual/
Log:
Renaming module openvas-manual to openvas-compendium.
Copied: trunk/openvas-compendium (from rev 1090, trunk/openvas-manual)
From scm-commit at wald.intevation.org Fri Aug 1 20:08:05 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 20:08:05 +0200 (CEST)
Subject: [Openvas-commits] r1093 - in trunk: doc/openvas-compendium
openvas-compendium
Message-ID: <20080801180805.6B1BF4072C@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 20:08:03 +0200 (Fri, 01 Aug 2008)
New Revision: 1093
Added:
trunk/openvas-compendium/openvas-compendium.tex
Removed:
trunk/doc/openvas-compendium/openvas-compendium.tex
Modified:
trunk/openvas-compendium/ChangeLog
Log:
Moving openvas-compendium.tex to the openvas-compendium module.
Deleted: trunk/doc/openvas-compendium/openvas-compendium.tex
===================================================================
--- trunk/doc/openvas-compendium/openvas-compendium.tex 2008-08-01 17:58:36 UTC (rev 1092)
+++ trunk/doc/openvas-compendium/openvas-compendium.tex 2008-08-01 18:08:03 UTC (rev 1093)
@@ -1,2417 +0,0 @@
-% OpenVAS
-% $Id$
-% Description: The OpenVAS Compendium
-% Note, that this a HyperLaTeX source and not plain LaTeX!
-%
-% Authors:
-% Jan-Oliver Wagner
-% Michael Wiegand
-% Tim Brown
-%
-% Copyright:
-% Copyright (C) 2008 Intevation GmbH
-% Copyright (C) 2008 Tim Brown
-%
-% This program is free software; you can redistribute it and/or modify
-% it under the terms of the GNU General Public License version 2,
-% as published by the Free Software Foundation
-%
-% This program is distributed in the hope that it will be useful,
-% but WITHOUT ANY WARRANTY; without even the implied warranty of
-% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-% GNU General Public License for more details.
-%
-% You should have received a copy of the GNU General Public License
-% along with this program; if not, write to the Free Software
-% Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-
-\documentclass[a4paper,11pt,twoside,titlepage,dvips]{scrbook}
-\usepackage{hyperlatex}
-\usepackage{a4wide}
-\usepackage{times}
-\usepackage[latin1]{inputenc}
-\usepackage[T1]{fontenc}
-\usepackage{ifpdf}
-\T\ifpdf\usepackage[pdftex]{graphicx}\else\usepackage{graphicx}\fi
-\W\usepackage{graphicx}
-\usepackage{alltt}
-\usepackage{moreverb}
-\usepackage{fancyhdr}
-%\W\usepackage{rhxpanel}
-\W\usepackage{sequential}
-\W\htmldirectory{./html}
-
-
-
-\newcommand{\IncludeImage}[2][]{\texorhtml{%
-\begin{center}%
-\ifpdf
- \DeclareGraphicsExtensions{.png}
- \includegraphics[#1]{#2.png}%
-\else
- \DeclareGraphicsExtensions{.eps}
- \includegraphics[#1]{#2}%
-\fi
-\end{center}%
-}{%
-\htmlimg{../#2.png}%
-}}
-
-% Hyperref should be among the last packages loaded
-\usepackage{hyperref}
-
-
-\newcommand{\compendiumversion}{0.1.0-svn}
-\newcommand{\compendiumdate}{20080708}
-\newcommand{\compendiumauthor}[1]{\begin{small}(by {#1})\end{small}}
-\newcommand{\hyperurl}[1]{\htmlonly{\xml{p}\small
-\xlink{{#1}}{{#1}}\xml{br}}\texonly{\small{#1}}}
-
-% for a consistent appearance of key names
-\newcommand{\openvasd}{openvasd}
-\newcommand{\openvasnvtsync}{openvas-nvt-sync}
-
-\T\fancyhead{} % clear all fields
-\T\fancyhead[LO,RE]{OpenVAS Compendium \compendiumversion\ \compendiumdate}
-\T\fancyhead[RO,LE]{\thepage}
-\T\fancyfoot[C]{\includegraphics[width=1cm]{images/openvas-logo}}
-
-
-% Title stuff
-\htmltitle{OpenVAS Compendium}
-\title{
-\IncludeImage[width=10cm]{images/openvas-logo}
-\ \\
-OpenVAS Compendium}
-
-\author{\htmlonly{\xml{p}\small
-\xlink{List of PDF Download Versions}{http://wald.intevation.org/frs/?group_id=29}\xml{br}
-%To \xlink{OpenVAS online Compendium}{openvas-compendium.html}\xml{br}
-To \xlink{OpenVAS Homepage}{http://www.openvas.org/}\xml{p}
-}%
-A Publication of the OpenVAS Project\\
- \small Jan-Oliver Wagner, Michael Wiegand, Tim Brown, Carsten Koch Mauthe}
-\date{Version \compendiumversion\ as of \compendiumdate\ }
-
-
-\begin{document}
-\thispagestyle{empty}
-\pagestyle{fancy}
-\T\parindent0cm
-\T\parskip\medskipamount
-
-
-\maketitle
-
-
-\chapter*{Imprint}
-
-\noindent
-Copyright \copyright{} 2008 Intevation GmbH\\
-
-\IncludeImage[width=5cm]{images/cc-by-sa-logo}
-
-This work is licensed under the
-
-Creative Commons License Attribution-ShareAlike 3.0 Unported
-
-\hyperurl{http://creativecommons.org/licenses/by-sa/3.0/deed.en}
-
-%Special Thanks to:\\
-%XXX YYY for ZZZ (2008).\\
-
-\clearpage
-\tableofcontents
-\clearpage
-
-\chapter{Introduction}
-\section{About this Compendium}
-
-\compendiumauthor{Jan-Oliver Wagner}
-
-This compendium was compiled by people involved in the
-OpenVAS project. The intention is to provide a comprehensive documentation
-for all aspects of network vulnerability scanning with OpenVAS.
-
-This ranges from instructions on how to use the OpenVAS-Client graphical user
-interface, run specific test methods and write NASL vulnerability tests to
-details on the internal architecture of the actual scan server software.
-
-The present version of the compendium is far from complete. However, the section
-about OpenVAS-Client is already complete.
-
-\section{About the OpenVAS Project}
-
-\compendiumauthor{Michael Wiegand}
-
-OpenVAS stands for Open Vulnerability Assessment System and is a network
-security scanner with associated tools like a graphical user front-end. The core
-is a server component with a set of network vulnerability tests (NVTs) to detect
-security problems in remote systems and applications.
-
-OpenVAS products are Free Software under GNU GPL and a fork of the Nessus
-security scanner.
-
-\section{About the OpenVAS Software}
-
-\compendiumauthor{Michael Wiegand}
-
-\IncludeImage[width=10cm]{images/OpenVAS-Structure}
-
-The OpenVAS software consists of five distinct parts which are provided and
-maintained by the OpenVAS projects. The individual parts are:
-\begin{description}
- \item[OpenVAS-Server:] This is the core component of OpenVAS. It contains the
-functionality used for scanning a large number of target servers at a high
-speed. Scans will always originate from the host where OpenVAS-Server is
-running; therefore, this machine has to be able reach the intended targets.
- \item[OpenVAS-Client:] OpenVAS-Client controls the OpenVAS server,
-processes the scan results and displays them to the user. OpenVAS-Client can run
-on any machine able to connect to the OpenVAS-Server and can control multiple
-servers.
- \item[OpenVAS-Libraries:] This module contains functionality used by
-OpenVAS-Server.
- \item[OpenVAS-LibNASL:] The NVTs are written in the ``Nessus Attack Scripting
-Language'' (NASL). This module contains the functionality needed by
-OpenVAS-Server to interface with NASL.
- \item[OpenVAS-Plugins:] This module contains a base set of NVTs. Please be
-aware that the update cycle of this module is not intended to ensure the
-availability of the most recent NVTs. If you need up-to-date NVTs you should
-consider subscribing to a NVT feed as described in section \ref{sec:NVT feed}.
-\end{description}
-
-\clearpage
-
-\chapter{Planning OpenVAS-based Network Auditing}
-\compendiumauthor{Jan-Oliver Wagner}
-
-Note: This section is not complete yet.
-
-\section{Consider Coverage of Available Vulnerability Tests}
-\label{sec:NVT feed}
-
-As one of the first tasks of planning security audits based
-on OpenVAS, you should compare your targets with the coverage
-of the currently available OpenVAS vulnerability tests.
-
-Please be aware that the OpenVAS server (actually its module
-``openvas-plugins'') delivers only a base set of tests.
-The update cycle of this base set is quite long compared to
-the occurrence of new vulnerabilities and respective tests.
-New or changed tests are delivered via so-called ``feed services''.
-
-If you want to test your network against the latest threats, a successful
-outcome will depend on the quality of the feed service(s) you subscribed to.
-Although the set of
-tests provided by ``openvas-plugins'' will detect a large range of older,
-well-known vulnerabilities, it will most probably be outdated by the time you
-use it and will not be able to detect the most recent vulnerabilities. In order
-to stay up-to-date with the latest security threats, you will need a feed
-service that provides you with the most recent tests for these threats.
-
-The OpenVAS project maintains a feed of its own:
-
- http://www.openvas.org/openvas-nvt-feed.html
-
-To evaluate your need for an up-to-date feed service, you should think about
-the following questions:
-
-\begin{itemize}
-\item To what extent do the available feeds and their maintained
- families cover my audit target?
-\item In case you are planning a permanent auditing solution and not just a
- single shot: How sustainable is the feed service organized?
-\end{itemize}
-
-\section{Choose Location of Scan-Server}
-
-If you are planning to use the OpenVAS security scanner in your network, the
-best location for the machine running the server module depends on the targets
-you want to evaluate:
-
-\begin{itemize}
-\item Target is a public server:
-
- Several tests do follow the very same path
- as various attacks do: from a remote network.
- If you are only interested in these tests,
- you may use a arbitrary location of your OpenVAS
- server outside of the targeted network.
-
- However, you are advised to contact the
- administration of the target systems beforehand and inform them that you
- are planning on running OpenVAS against their machines.
- Because OpenVAS will actively look for vulnerabilities on the target
- system, a scan will under certain circumstances look like a real attack on
- the target system and might be acted upon legally and/or technically by
- the administration of the system in question.
-
-\item Targets are intranet desktops:
-
-\item Targets are intranet servers:
-
-\item Targets are intranet active network components:
-
-\end{itemize}
-
-\section{Choose Type of Scan-Server}
-
-
-\clearpage
-
-\chapter{Installing and Configuring OpenVAS-Server}
-\label{chap:Install-And-Configure-Server}
-
-\compendiumauthor{Tim Brown, Jan-Oliver Wagner and Michael Wiegand}
-\section{Installing Binary Packages}
-
-Easily installable binary packages for OpenVAS-Client are available for
-download on the OpenVAS website. The availability of these packages may change
-over time and thus the following descriptions might be slightly outdated;
-please refer to the OpenVAS website for up-to-date information.
-
-\subsection{Debian "Sid" (unstable) and "Lenny" (testing)}
-
-OpenVAS server is currently being integrated into Debian. The following modules
-are already available for ``Sid'' and ``Lenny'':
-\begin{itemize}
- \item libopenvas1
- \item libopenvas1-dev
-\end{itemize}
-
- You can install these modules with the following commands:
-
-\begin{verbatim}
- # apt-get install libopenvas1
- # apt-get install libopenvas1-dev
-\end{verbatim}
-
-ATTENTION: For the remaining modules you need to get the latest
-source tar-balls and compile them on your own.
-
-\subsection{Debian 4.0 ``Etch''(stable)}
-
-The OpenVAS-Server modules are not official packages for the Debian 4.0 release
-("Etch"). To help you to run OpenVAS-Server on Debian Etch, the OpenVAS project
-provides backports for some modules for Etch. You can install these modules on
-Debian Etch by following these steps:
-
-Select the following resource and add the line to the file
-\verb!/etc/apt/sources.list! on your system:
-
-\begin{verbatim}
-deb http://apt.intevation.de/ etch openvas
-\end{verbatim}
-
-Then, update your package list and install the available modules: (Please note
-that some modules are not yet available as backports. You have to compile the
-remaining modules on your own.)
-\begin{verbatim}
-# apt-get update
-# apt-get install libopenvas1
-# apt-get install libopenvas1-dev
-\end{verbatim}
-
-Note: If you know of further sources of backports, let the
-OpenVAS team know and they will be added to this list.
-
-\subsection{Gentoo}
-\label{sec:gentoo-server}
-
-The ebuilds are in the Gentoo portage. To get the most recent packages simply
-run:
-
-\begin{verbatim}
- #emerge --sync
-\end{verbatim}
-
-Because all OpenVAS packages are masked, you need to unmask the packages by
-keyword using one of the following ways:
-\begin{enumerate}
- \item Edit \verb!/etc/portage/package.keywords! and add the packages:
-\begin{verbatim}
- net-analyzer/openvas ~x86
- net-analyzer/openvas-client ~x86
- net-analyzer/openvas-libnasl ~x86
- net-analyzer/openvas-libraries ~x86
- net-analyzer/openvas-plugins ~x86
- net-analyzer/openvas-server ~x86
-\end{verbatim}
- After that you can run:
-\begin{verbatim}
- #emerge net-analyzer/openvas
- #emerge net-analyzer/openvas-server
- #emerge net-analyzer/openvas-client
-\end{verbatim}
-\item To emerge all masked OpenVAS packages together you can use
-the following command:
-\begin{verbatim}
- # ACCEPT_KEYWORDS="~x86" emerge openvas
-\end{verbatim}
-\end{enumerate}
-
- For the server package there are the following "USE-Flags": gtk tcpd debug
-prelude
-
- Set them in the \verb!/etc/make.conf! to enable the support e.g. for prelude:
-\begin{verbatim}
- USE="prelude"
-\end{verbatim}
-
-or run it via the command line:
-
-\begin{verbatim}
- # ACCEPT_KEYWORDS="~x86" USE="prelude -debug" emerge openvas
-\end{verbatim}
-
-\subsection{OpenSUSE 10.2}
-
-In the download area you will find the files
-
-\begin{itemize}
-\item openvas-libraries-N.N.N-M.suse102.openvas.i586.rpm
-\item openvas-libnasl-N.N.N-M.suse102.openvas.i586.rpm
-\item openvas-server-N.N.N-M.suse102.openvas.i586.rpm
-\item openvas-plugins-N.N.N-M.suse102.openvas.i586.rpm
-\end{itemize}
-
-where N.N.N stands for the version of OpenVAS-Client and M for the package
-release number.
-
-For installation follow these steps as user "root" (insert the most
-current version numbers):
-\begin{verbatim}
-# rpm -i openvas-libraries-N.N.N-M.suse102.openvas.i586.rpm
-# rpm -i openvas-libnasl-N.N.N-M.suse102.openvas.i586.rpm
-# rpm -i openvas-server-N.N.N-M.suse102.openvas.i586.rpm
-# rpm -i openvas-plugins-N.N.N-M.suse102.openvas.i586.rpm
-# openvas-mkcert
-# openvas-adduser
-# openvas-nvt-sync
-# openvasd -D
-\end{verbatim}
-
-Note that you need to restart openvasd after each reboot and
-after each NVT synchronization.
-
-The corresponding source RPM files are
-named openvas-MODULE-N.N.N-M.suse102.openvas.src.rpm (where MODULE is
-"libraries", "libnasl", "server" and "plugins"). You will need these files only
-if you plan to rebuild the actual installation package.
-
-Finally, you will find the
-files openvas-MODULE-devel-N.N.N-M.suse102.openvas.i586.rpm (except for module
-"plugins"). These packages will install some files that are needed to compile
-some of the packages or rebuild packages from the source RPM packages. For
-simply running the OpenVAS server, it is not necessary to install the -devel-
-packages.
-
-\subsection{Fedora 8}
-
-In the download area you will find the files
-\begin{itemize}
-\item openvas-libraries-N.N.N-M.fc8.openvas.i586.rpm
-\item openvas-libnasl-N.N.N-M.fc8.openvas.i586.rpm
-\item openvas-server-N.N.N-M.fc8.openvas.i586.rpm
-\item openvas-plugins-N.N.N-M.fc8.openvas.i586.rpm
-\end{itemize}
-
- where N.N.N stands for the version of OpenVAS-Client and M for the package
-release number.
-
- For installation follow these steps as user "root" (insert the most current
-version numbers):
-\begin{verbatim}
-# rpm -i openvas-libraries-N.N.N-M.fc8.openvas.i586.rpm
-# rpm -i openvas-libnasl-N.N.N-M.fc8.openvas.i586.rpm
-# rpm -i openvas-server-N.N.N-M.fc8.openvas.i586.rpm
-# rpm -i openvas-plugins-N.N.N-M.fc8.openvas.i586.rpm
-# openvas-mkcert
-# openvas-adduser
-# openvas-nvt-sync
-# openvasd -D
-\end{verbatim}
-
-Note that you need to restart openvasd after each reboot and
-after each NVT synchronization.
-
-Also note that you may need to open the OpenVAS port to allow OpenVAS-Client to
-connect from other machines. This could be done by switching off the firewall
-(not recommended) or by adding a line like this to the file
-\verb|/etc/sysconfig/iptables| at the appropriate position:
-
-\begin{verbatim}
- -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1241 -j
-ACCEPT
-\end{verbatim}
-
-You need to run the following command after this change:
-\begin{verbatim}
-/etc/init.d/iptables restart
-\end{verbatim}
-
-The corresponding source RPM files are named
-openvas-MODULE-N.N.N-M.fc8.openvas.src.rpm (where MODULE is "libraries",
-"libnasl", "server" and "plugins"). You will need these files only if you plan
-to rebuild the actual installation package.
-
-Finally, you will find the
-files openvas-MODULE-devel-N.N.N-M.fc8.openvas.i586.rpm (except for module
-"plugins"). These packages will install some files that are needed to compile
-some of the packages or rebuild packages from the source RPM packages. For
-simply running the OpenVAS server, it is not necessary to install the -devel-
-packages.
-
-\section{Compiling OpenVAS-Server from Source Packages}
-
-\subsection{Latest source code release}
-
-The download link for the latest source code release can be found in the
-"Download" section on the OpenVAS website.
-
-Download the four ".tar.gz" source code archives and unpack with "tar -xzf
-openvas-MODULE-N.N.N.tar.gz". Compiling from source is currently geared towards
-GNU/Linux systems, but may work as well in other environments.
-
-You have to compile and install the packages in the the following sequence:
-\begin{enumerate}
-\item openvas-libraries
-\item openvas-libnasl
-\item openvas-server
-\item openvas-plugins
-\end{enumerate}
-
-Now read the file \verb|INSTALL_README| inside the directory "openvas-libraries"
-for the next steps.
-
-Repeat for each module and read the corresponding INSTALL or README files.
-
-\subsection{Most current state of development (directly from the source code
-management
-system)}
-
-You need subversion to retrieve the code:
-\begin{verbatim}
-$ svn checkout
-https://svn.wald.intevation.org/svn/openvas/trunk/openvas-libraries
-$ svn checkout
-https://svn.wald.intevation.org/svn/openvas/trunk/openvas-libnasl
-$ svn checkout https://svn.wald.intevation.org/svn/openvas/trunk/openvas-server
-$ svn checkout
-https://svn.wald.intevation.org/svn/openvas/trunk/openvas-plugins
-\end{verbatim}
-
-Now read the file \verb|INSTALL_README| inside the directory "openvas-libraries"
-for the next steps.
-
-Repeat for each module and read the corresponding INSTALL or README files.
-
-Although the OpenVAS team is committed to maintaining a high code quality,
-please be aware that you are using a development state that may be incomplete
-and unstable and should not be used in production environments.
-
-\section{Configuring OpenVAS-Server}
-\label{sec:Configuring OpenVAS-Server}
-\compendiumauthor{Michael Wiegand}
-
-\subsection{Generating a Server Certificate}
-
-For security reasons, communication between server and client is only possible
-through SSL encrypted connections. In order to establish an SSL encrypted
-connection, the server needs to have an SSL certificate. If the machine
-OpenVAS-Server is running on does not have a certificate, you will to generate
-one yourself. The easiest way to do this is through the \verb|openvas-mkcert|
-script provided by the OpenVAS-Server package. This will generate two
-certificates: one certificate for a local certificate authority (CA) and a
-second certificate for the OpenVAS server which is signed by the CA and is
-presented to connecting clients.
-
-\subsection{Adding New Users}
-
-In order to use an OpenVAS server, a client needs to have a user account on the
-server. The OpenVAS-Server package provides the \verb|openvas-adduser| script
-to simplify creating user account. Using \verb|openvas-adduser|, you can specify
-whether the user should use a password or a certificate to authenticate himself
-and optionally restrict the access rights of the user.
-
-Restricted access rights can be useful to prevent users from scanning arbitrary
-hosts or networks. You can specify rules that restrict an user to certain hosts
-or subnets or even prevent him from scanning any host but his own.
-
-The correct syntax for user rules is:
-
-\verb#accept|deny ip/mask#
-
-and
-
-\verb#default accept|deny#
-
-Where \verb#mask# is the CIDR netmask of the rule.
-
-The \verb#default# statement must be the last rule and defines the policy for
-the user.
-
-The following rule set will allow the user to test 192.168.1.0/24,
-192.168.3.0/24 and 172.22.0.0/16, but nothing else:
-
-\begin{verbatim}
-accept 192.168.1.0/24
-accept 192.168.3.0/24
-accept 172.22.0.0/16
-default deny
-\end{verbatim}
-
-The following rule set will allow the user to test whatever he wants,
-except the network 192.168.1.0/24:
-
-\begin{verbatim}
-deny 192.168.1.0/24
-default accept
-\end{verbatim}
-
-The keyword \verb#client_ip# is replaced at runtime by the IP address
-of the user. If you want to restrict the user to be able to scan only the system
-he is connecting from, you can use the following ruleset:
-
-\begin{verbatim}
-accept client_ip
-default deny
-\end{verbatim}
-
-\subsection{Advanced Configuration}
-
-If you need to make changes to the default OpenVAS-Server configuration, you can
-do so in the configuration file located at \verb#/etc/openvas/openvasd.conf#.
-
-The following settings can be configured through the openvasd.conf configuration
-file (note: the default values for your distribution may differ from the default
-values described here):
-
-\begin{description}
- \item[plugins\_folder] This setting configures the path where the NVT scripts
-can be found. \textit{(default value: /lib/openvas/plugins)}
- \item[max\_hosts] The maximum number of hosts that will be tested
-simultaneously. \textit{(default value: 30)}
- \item[max\_checks] The maximum number of checks that will run simultaneously
-against a given host. \textit{(default value: 10)}
- \item[be\_nice] Niceness. If set to 'yes', openvasd will renice itself to 10.
-\textit{(default value: no)}
- \item[logfile] The file used to log activity. If this value is set to 'syslog',
-OpenVAS-Server will use syslogd for logging.
-\textit{(default value: /var/log/openvas/openvasd.messages)}
- \item[log\_whole\_attack] This setting controls how detailed should be logged. If
-this option is set to 'no', only the start and end time of the scan is logged.
-If set to 'yes', OpenVAS-Server will log more information, including the time
-each plugin took to execute. Be aware that this may cause OpenVAS-Server to use
-more hard disk space and to access the hard disk more often during the scan.
-\textit{(default value: no)}
- \item[log\_plugins\_name\_at\_load] This setting controls whether the names of the
-plugins that are loaded by the server should be logged.
-\textit{(default value: no)}
-
- \item[dumpfile] This option configures the name of the file that should be used
-for debugging output. If this option is set to '-', debugging output will be
-written to stdout. \textit{(default value: /var/log/openvas/openvasd.dump)}
-
- \item[rules] The filename for the server rules file.
-\textit{(default value: /etc/openvas/openvasd.rules)}
-
- \item[users] The filename for the user database.
-\textit{(default value: /etc/openvas/openvasd.users)}
-
- \item[cgi\_path] The default CGI paths to check, separated by colons(':').
-\textit{(default value: /cgi-bin:/scripts)}
-
- \item[port\_range] The range of ports that will be scanned by the port scanners.
-If this setting is set to 'default', OpenVAS-Server will scan the ports
-specified in the file found at \verb#/var/lib/openvas/openvas-services#.
-\textit{(default value: default)}
-
- \item[optimize\_test] Security tests may request to be launched if and only if
-certain information gathered by other tests exists in the knowledge base, or if
-and only if a given port is open. If this option is set to 'yes', it will speed
-up the test, but may cause the OpenVAS server to miss some vulnerabilities.
-\textit{(default value: yes)}
-
- \item[language] The language to use in plugin description. Currently the values
-'english' and 'french' are supported. \textit{(default value: english)}
-
- \item[checks\_read\_timeout] The read timeout (in seconds) for the sockets used
-while scanning. \textit{(default value: 5)}
-
- \item[non\_simult\_ports] This option can be used to specify a list of ports or
-services against which plugins should not be run simultaneously.
-\textit{(default value: 139, 445)}
-
- \item[plugins\_timeout] The maximum lifetime of a plugin (in seconds).
-\textit{(default value: 320)}
-
- \item[safe\_checks] Some security checks may harm the target server, by
-disabling the remote service temporarily or until a reboot. If this option, is
-set to 'yes', the OpenVAS server will rely on banners instead of actually
-performing a security check. This will result in a less reliable report, but you
-is less likely to disrupt functionality on the target system during a test.
-\textit{(default value: yes)}
-
- \item[auto\_enable\_dependencies] If this option is set to 'yes', OpenVAS-Server
-will automatically enable plugins which are need by the plugins selected by the
-user. \textit{(default value: yes)}
-
- \item[silent\_dependencies] If this option is set to 'yes', output from plugins
-which were enabled automatically will not be send to the client.
-\textit{(default value: yes)}
-
- \item[use\_mac\_addr] Designate hosts by MAC address, not IP address; this can
-be useful in DHCP networks. \textit{(default value: no)}
-
- \item[save\_knowledge\_base] This option controls whether the knowledge base
-created during the scan should be saved to disk. \textit{(default value: no)}
-
- \item[kb\_restore] This setting controls whether the knowledge base should be
-restored for each test. \textit{(default value: no)}
-
- \item[only\_test\_hosts\_whose\_kb\_we\_dont\_have] If this option is set to
-'yes', OpenVAS-Server will only test the hosts that are not yet in the knowledge
-base. This can be used to scan new hosts once if they appear in a subnet for the
-first time, for example. \textit{(default value: no)}
-
- \item[only\_test\_hosts\_whose\_kb\_we\_have] If this option is set to 'yes',
-OpenVAS-Server will only test the hosts that are already in the knowledge
-base. This is useful for scanning only a set of host that are already known to
-the server. \textit{(default value: no)}
-
- \item[kb\_dont\_replay\_scanners] If this option is set to 'yes' and the option
-kb\_restore has been enabled, scanner plugins will not be launched if they have
-already been launched in the past. \textit{(default value: no)}
-
- \item[kb\_dont\_replay\_info\_gathering] If this option is set to 'yes' and the
-option kb\_restore has been enabled, information gathering plugins will not be
-launched if they have already been launched in the past.
-\textit{(default value: no)}
-
- \item[kb\_dont\_replay\_attacks] If this option is set to 'yes' and the option
-kb\_restore has been enabled, attack plugins will not be launched if they have
-already been launched in the past. \textit{(default value: no)}
-
- \item[kb\_dont\_replay\_denials] If this option is set to 'yes' and the option
-kb\_restore has been enable, denial of service plugins will not be launched if
-they have already been launched in the past. \textit{(default value: no)}
-
- \item[kb\_max\_age] This option sets the maximum age of the knowledge base (in
-seconds). \textit{(default value: 864000)}
-
- \item[slice\_network\_addresses] If this option is set to 'yes', OpenVAS will
-not scan a network sequentially, (10.0.0.1, 10.0.0.2, 10.0.0.3) but will attempt
-to slice the workload throughout the whole network (i.e.: 10.0.0.1, 10.0.0.127,
-10.0.0.2, 10.0.0.128). \textit{(default value: no)}
-
- \item[nasl\_no\_signature\_check] If this option is set to 'yes',
-OpenVAS-Server will not check the signatures of the NASL scripts and will run
-scripts even if they have no or no valid signature. Be aware that setting this
-option to 'yes' does pose a security risk. However, at the current stage of
-OpenVAS development, signatures are only available for a limited subset of
-tests. If this option is set to 'no', you will only be able to use a very
-limited number of plugins. For this reason, this option will default to 'yes'
-until an infrastructure for signature checking has been established.
-\textit{(default value: yes)}
-\end{description}
-
-\section{Managing NVT signatures}
-\compendiumauthor{Jan-Oliver Wagner}
-
-This section explains what you need to do to allow your OpenVAS-Server to
-execute only signed NVTs with a trust level you decide.
-
-Currently, some signed NVTs are available by using the command
-\verb#openvas-nvt-sync# which is included in openvas-plugins since release
-0.9.1. The signatures correspond to the certificate "OpenVAS Transfer Integrity"
-available on the OpenVAS website.
-
-\subsection{What is a Signature?}
-
-A clever method is applied to compute a unique checksum for a file. If only a
-single character in the file changes, the checksum will change as well. This
-checksum is digitally signed in a way that you can test with a public
-certificate whether a certain key was used to create the signature. Such a key
-and certificate do always form a pair that is related to each other. If the
-signed file has been modified by a third party, the signature will be broken. In
-this case you should not trust the file.
-
-If the signature is not broken, the question remains if you trust the owner of
-the key. If you decided to do so (and there any many ways and supporting
-technologies to manage this), you can accept the file as trustworthy.
-
-\subsection{The Signature Format}
-
-The signatures for OpenVAS NVTs and associated files (.nasl, .inc and .nes) are
-standard so-called "ASCII-armored detached OpenPGP signatures" created with
-GnuPG. This format features:
-
-\begin{itemize}
- \item Multiple signer keys possible
- \item Site administrators can decide which keys to trust
- \item Signatures can be created and verified with widely available tools like
-GnuPG
- \item detached signatures do not require changes to the signed file (like
-inline signatures would)
-\end{itemize}
-
-The name of the signature file is the name of the signed file with the added
-extension ".asc". That is, the name of the signature file for a file
-"myscript.nasl" is "myscript.nasl.asc".
-
-Please note the difference to Nessus: Nessus signatures were inline x509-based
-signatures. This concept does not consider multiple signatures. Please be aware
-that OpenVAS no longer supports Nessus signatures and will consider plugins
-unsigned even if the have a valid Nessus signature.
-
-\subsection{The Signature Verification Process}
-
-The signature verification of the OpenVAS server is activated by setting
-"nasl\_no\_signature\_check = no" in /etc/openvas/openvasd.conf.
-
-At start-up the openvas daemon (openvasd) checks all signatures for validity.
-Only fully trusted files are considered by the server and thus loaded and made
-available to OpenVAS client.
-
-The trust check uses a special list of certificates managed for the
-OpenVAS server. It is a standard GnuPG keyring located by default in
-/etc/openvas/gnupg.
-
-When OpenVAS verifies a signature it checks all signatures contained in the
-signature file and all signatures must be fully valid. This means that all of
-the following criteria must be fulfilled for all signatures:
-
-\begin{itemize}
- \item The certificate must be present in the keyring.
- \item The key must be fully valid.
- \item The signature must be valid.
-\end{itemize}
-
-If any of the signatures does not meet all of these criteria, that file is
-considered untrustworthy and will not be executed at all. If all signatures meet
-the criteria, the script is trusted fully and may execute all functions. If no
-signature file exists, the script is not executed at all.
-
-Again, pleas note the difference to Nessus: For Nessus signatures, three levels
-were distinguished: no signature, a bad signature and a good signature. Plugins
-with no signature were still executed, but in a "restricted" mode where no
-functions that were regarded critical could be executed. OpenVAS explicitly only
-distinguishes between fully trusted and untrusted files.
-
-\subsection{How to Add a Certificate}
-
-To add a certificate to the OpenVAS Server keyring, use this command:
-
-\begin{verbatim}
-# gpg --homedir=/etc/openvas/gnupg --import certificate-file.asc
-\end{verbatim}
-
-See the OpenVAS website for available certificate files.
-
-\subsection{How to Set Trust}
-
-To express trust into keys that signed NVTs (see "How to set trust" below) you
-need a signing key for your OpenVAS installation. You can use an existing key,
-or you can generate a new one:
-
-\begin{verbatim}
-# gpg --homedir=/etc/openvas/gnupg --gen-key
-\end{verbatim}
-
-This needs to be done only once for an OpenVAS-Server installation.
-
-For OpenVAS to trust a signature, the key used to create the signature has to be
-valid. A certificate corresponding to this key that was just imported has an
-unknown validity and thus is considered not valid.
-
-In order to trust a certificate for your purpose, you have to sign it. The
-recommended way is to use local signatures that remain only in the keyring of
-your OpenVAS Server installation.
-
-To sign a certificate you need to know its KEY\_ID. You can get it either
-from the OpenVAS website or via a "list-keys" command. Then you can locally
-sign:
-
-\begin{verbatim}
-# gpg --homedir=/etc/openvas/gnupg --list-keys
-
-# gpg --homedir=/etc/openvas/gnupg --lsign-key KEY_ID
-\end{verbatim}
-
-Before signing you should be absolutely sure that you are signing correct
-certificate. You may use its fingerprint and other methods to convince yourself.
-
-\subsection{How to Remove a Certificate}
-
-\begin{verbatim}
-# gpg --homedir=/etc/openvas/gnupg --delete-keys KEY_ID
-\end{verbatim}
-
-\subsection{Manual Signature Verification}
-
-In case you want to manually verify the validity of a .nasl file, you can
-either run GnuPG:
-
-\begin{verbatim}
-$ gpg --homedir=/etc/openvas/gnupg gpg --verify script.nasl.asc script.nasl
-\end{verbatim}
-
-Or you can use the standalone nasl interpreter:
-\begin{verbatim}
-$ openvas-nasl -p script.nasl
-\end{verbatim}
-
-The -p Option means that the script is only parsed and not executed.
-
-To debug the signature verification done by the nasl interpreter, use the -T
-option to enable the trace mode. The signature verification will leave more
-detailed information about the verification and the signatures found in the
-trace file.
-\clearpage
-
-\chapter{Installing and Configuring OpenVAS-Client}
-\compendiumauthor{Tim Brown, Jan-Oliver Wagner and Michael Wiegand}
-
-\section{Installing Binary Packages}
-
-Easily installable binary packages for OpenVAS-Client are available for
-download on the OpenVAS website. The availability of these packages may change
-over time; please refer to the OpenVAS website for up-to-date information.
-
-\subsection{Debian "Sid" (unstable) and "Lenny" (testing)}
-
-OpenVAS-Client is an official Debian package for the distribution "unstable"
-("Sid) and "testing" ("Lenny"). You can find more information about the Debian
-packages on the OpenVAS-Client package pages
-for Sid\footnote{http://packages.debian.org/sid/openvas-client} and
-Lenny\footnote{http://packages.debian.org/lenny/openvas-client}.
-
-This means you can simply install OpenVAS-Client on Debian Sid or Debian
-Lenny with the following command:
-\begin{verbatim}
-# apt-get install openvas-client
-\end{verbatim}
-
-\subsection{Debian "Etch" 4.0 (stable)}
-
-OpenVAS-Client is not an official package for the Debian 4.0 release ("Etch").
-To enable you to easily run OpenVAS-Client on Debian Etch, the OpenVAS
-project provides backports for Etch. You can install OpenVAS-Client on
-Debian Etch by following these steps:
-
-Select the following resource and add the line
-to the file /etc/apt/sources.list on your system:
-\begin{verbatim}
- deb http://apt.intevation.de/ etch openvas
-\end{verbatim}
-
-Then, update your package list and install OpenVAS-Client:
-
-\begin{verbatim}
- # apt-get update
- # apt-get install openvas-client
-\end{verbatim}
-
-\subsection{Ubuntu 8.10 "Intrepid Ibex"}
-
-OpenVAS-Client has been added to the upcoming Ubuntu 8.10 release
-("Intrepid Ibex") which is scheduled for release in October 2008. You can find
-more information about the Ubuntu
-package on the OpenVAS Client package page for Intrepid Ibex (at
-\hyperurl{http://packages.ubuntu.com/intrepid/openvas-client}).
-
-This means you can simply install OpenVAS-Client on Ubuntu 8.10 with the
-following command:
-
-\begin{verbatim}
-# apt-get install openvas-client
-\end{verbatim}
-
-Backported packages are also available for the Ubuntu 8.04 LTS release ("Hardy
-Heron"). To install OpenVAS-Client on Ubuntu 8.04 LTS, simply follow the
-instructions for Debian 4.0 "Etch" as described above.
-
-\subsection{Gentoo}
-
-Please see the installation description for OpenVAS-Server on Gentoo in
-section \ref{sec:gentoo-server}.
-
-\subsection{OpenSUSE 10.2}
-
-In the download area you will find the file
-openvas-client-N.N.N-M.suse102.openvas.i586.rpm where N.N.N stands for the
-version of OpenVAS-Client and M for the package release number.
-
-The corresponding source RPM files are named
-openvas-client-N.N.N-M.suse102.openvas.src.rpm.
-You will need these files only if you plan to rebuild the actual installation
-package.
-
-
-\subsection{Fedora 8}
-
-In the download area you will find the file
-openvas-client-N.N.N-M.fc8.openvas.i586.rpm
-where N.N.N stands for the version of OpenVAS-Client and
-M for the package release number.
-
-The corresponding source RPM files are named
-openvas-client-N.N.N-M.fc8.openvas.src.rpm.
-You will need these files only if you plan to rebuild
-the actual installation package.
-
-\subsection{Windows XP SP2}
-
-In the download area you will find the file OpenVAS-Client-N.N.N-M-LL-setup.exe
-where N.N.N stands for the version of OpenVAS-Client, M for the package release
-number and LL for the language (e.g. en=English, de=German, sv=Swedish).
-
-\section{Compiling OpenVAS-Client from Source Packages}
-
-\subsection{Latest source code release}
-
-Download the ".tar.gz" source code archive from the download section of the
-OpenVAS website and unpack with "tar -xzf openvas-client-N.N.N.tar.gz".
-Compiling from source is currently geared towards GNU/Linux systems, but may
-work as well in other environments.
-
-Now read the README file inside the new directory for further instructions.
-
-\subsection{Most current state of development (directly from the source code
-management system)}
-
-You need subversion to retrieve the code:
-
-\begin{verbatim}
- $ svn checkout
-https://svn.wald.intevation.org/svn/openvas/trunk/openvas-client
-\end{verbatim}
-
-Change to the new directory and follow the instructions of the README file.
-
-Although the OpenVAS team is committed to maintaining a high code quality,
-please
-be aware that you are using a development state that may be incomplete and
-unstable and should not be used in production environments.
-
-\clearpage
-
-\chapter{Using OpenVAS-Client}
-\compendiumauthor{Jan-Oliver Wagner}
-
-This section describes the basic components of OpenVAS-Client
-and how to use them for day-to-day use as well as more specific
-features that might be of interest for advanced users.
-
-This documentation assumes OpenVAS-Client in version 1.0.4. Newer version
-might offer additional or changed functionality. In case, please refer to the website
-for information or support.
-
-\section{The Main Window}
-\label{sec:MainWindow}
-
-The main window of OpenVAS-Client is split into two major sections:
-On the left-hand side is the treelist with an overview of the locally
-stored tasks, scopes and reports. On the right-hand side there is
-a notebook with pages for comments, options and reports. This is the
-place where a security scan can be configured, commented upon and
-its result reviewed.
-
-\IncludeImage[width=10cm]{images/mainwindow-en}
-
-When you first start of OpenVAS-Client, you will see only one entry
-in the list: Global Settings. These settings you see on the first start-up are
-the default settings shipped with OpenVAS-Client. They do not cover a
-specific selection of plugins since a connection to an OpenVAS server is
-required to make a plugin selection. You can establish a connection with a
-server and then specify a global default plugin selection for later use.
-
-
-\subsection{Tasks}
-
-Tasks are intended to cover all activities of a major topic. A task could be
- {}``Test the machines of our headquarter'' or {}``Customer
-XYZ Inc.''.
-
-A task can contain a comment that explains the task in more detail.
-Also any type of additional info or reminder can be entered in the
-comment area, e.g. when to run the next series of scans or based on
-which contract the scans are performed.
-
-A task has neither options nor a report. Apart from the comment,
-it just contains a number of scopes.
-
-Possible operations for tasks are:
-
-
-\paragraph{New}
-
-Adds a new task with the title {}``unnamed''.
-
-
-\paragraph{Rename}
-
-Allows to edit the title in the treelist either by clicking
-on the title or by selecting the corresponding menu item.
-
-
-\paragraph{Remove}
-
-This means the removal of all scopes associated with this task and thus the
-removal action prompts for a confirmation.
-
-
-\subsection{Scopes}
-
-A scope can be seen as a sub-task. It defines a certain security scan.
-The title should indicate the scope of this scan, e.g. {}``Careful
-scan of web server production system'', {}``Aggressive scan of web
-server alpha test system'' or {}``All Sun workstations''.
-
-Comments can also be specified for each scope and may explain the
-scope in more detail as well as contain any other helpful hints regarding
-the respective scope.
-
-The scope is associated with a full set of options for the security
-scan. When creating a new scope, the general settings are copied. The
-scan options are explained in detail in a later section.
-
-It should be noted that a connection to an OpenVAS server is established within
-the context of a specific scope. If a scope is connected to the server, a scan
-based on the settings for this scope can be executed. An icon to the right of
-the scope title indicates the connection status of this scope. This means a task
-can contain a selection of scopes that connect to different OpenVAS servers
-with different plugins.
-
-Next, a scope may contain a number of reports. Whenever a scope is
-successfully executed, the resulting report is added to its list of
-reports. Also, importing a report from a file or from an OpenVAS server
-will add the report to the currently selected scope.
-
-Please note that changes to a scope are always and only stored when
-executing a scan. If you make changes to a scope like a new plugin
-selection and leave OpenVAS-Client without running a scan, these changes
-will be discarded.
-
-Possible operations for scopes are:
-
-
-\paragraph{Execute}
-
-The scope configuration is stored to disk and a security scan is executed
-with the currently specified options using the currently connected
-OpenVAS server.
-
-
-\paragraph{New}
-
-Adds a new scope entitled {}``unnamed'' as part of the currently
-selected task. As a default the global settings are copied. Note,
-that only explicitly saved global settings are taken as defaults.
-If you changed them inside OpenVAS-Client without saving them, they
-will have no effect.
-
-
-\paragraph{Rename}
-
-Allows to edit the title in the treelist either by clicking
-on the title or by selecting the corresponding menu item.
-
-
-\paragraph{Remove}
-
-This means the removal of all associated reports and thus the removal
-action prompts for a confirmation.
-
-
-\paragraph{Move to task}
-
-It is possible to move a scope with all of its reports from one task
-to another. This menu item has subitems which represent the other
-tasks. Select one of them and the scope will be moved.
-
-
-\paragraph{Open}
-
-You can load a scope file and add it to the current task with this
-menu command. Note that here only the parameter sets are covered but
-not the reports which are represented by files of their own. So, opening
-and saving (see below) scopes is a method to transfer you settings
-to someone else or to create a copy of the current scope for yourself.
-
-
-\paragraph{Save As}
-
-Saves the current scope to a file (which is of nessusrc type). Note
-that only the parameter sets are stored but not the reports. See above
-the description of {}``Open'' for more hints.
-
-
-\subsection{Reports}
-\label{sec:Reports}
-
-A report is the result of a security scan. It contains the results
-of the executed plugins associated with the corresponding subnet,
-host, port and severity.
-
-Managed within OpenVAS-Client, additionally a comment and, if available,
-the scan options leading to the report, can be stored. This additional
-information is not contained in the plain OpenVAS report files and
-thus gets lost when being exported. This also means that imported reports
-have no comments or scan options associated.
-
-Possible operations for reports are:
-
-
-\paragraph{Remove}
-
-Deletes the report and its comments and options. The
-user is prompted to confirm the removal.
-
-
-\paragraph{Import}
-
-Allows to import a report from a file. The standard exchange format
-is NBE (files suffixed {}``.nbe''). The file selection dialog allows
-to select the desired report file. A error hint will be displayed
-if the file format was not NBE. Else, the report is added to the currently
-selected scope. Neither comments nor options will be there for a report
-imported from a NBE file.
-
-
-\paragraph{Export}
-
-Allows to export the currently selected report either in a re-importable
-format (NBE) or in a format for further processing or presentation
-(XML, HTML, HTML with Pies and Graphs, \LaTeX{}, ASCII Text and PDF).
-It is recommended to use NBE if re-importing is planned and to use
-PDF for creating simple report documents that need no further editing.
-Use one of the other if you want to further process the report or
-integrate it into your own document style.
-
-
-\paragraph{Print}
-
-Selecting the Print command will create a PDF version of the current report
-and tries to run a PDF viewer installed on your system. OpenVAS-Client will try
-a number of well-known PDF viewers; if there is a PDF viewer installed on your
-system and this menu item does not work, please check if the executable file for
-your PDF viewer is available in your system path.
-
-
-\section{Authentication}
-
-OpenVAS-Client needs to connect to an OpenVAS server in order to retrieve
-the available plugins and to actually execute a security scan.
-
-OpenVAS-Client can handle multiple connections to different servers.
-Each scope has a connection of its own. Additionally, the Global Settings
-can be connected to an OpenVAS server to define default plugin selections
-and plugin parameters. Note that only explicitly saved Global Settings
-are used as defaults for new scopes.
-
-\IncludeImage[width=5cm]{images/authentication-dlg-en}
-
-The connection status is indicated with a icon in the tasks/scopes/reports
-treelist next to the title of the global settings or a scope. Only
-scopes are connected with the OpenVAS server.
-
-More information on the connection status is shown in the statusbar
-at the bottom of the main window. There, the connection information
-is displayed, i.e.. {}``Connection: username at host.test.example''.
-At bottom right there is an icon indicating the connection status.
-
-The connection dialog allows to specify the following settings for establishing
-a connection to an OpenVAS server:
-
-
-\paragraph{Host}
-
-The hostname or IP address of the server where an OpenVAS server is running.
-
-
-\paragraph{Port}
-
-The port where the OpenVAS Server waits for connections. Older Nessus
-Servers used 3001, but the official port now is 1241. With the default
-button you can reset this option to the default port.
-
-
-\paragraph{Login}
-
-Your username on the selected OpenVAS server. To use an OpenVAS server you have
-to have an account on the OpenVAS server. Please contact the administrator of
-the server if you need an account.
-
-
-\paragraph{Password}
-
-The password for your account on the OpenVAS server.
-
-
-\paragraph{Authentication by Certificate:}
-
-If you use this method you have to have a key/certificate pair created
-for you. This is usually done by the administrator of OpenVAS server
-using the available scripts. The administrator will give you the
-two files you need to specify (User Certificate File and User Key
-File). The administrator may create a key without a password or with
-a password. If you have a password for the User Key File you must
-enter the password in the corresponding text field.
-
-
-\subparagraph{Trusted CA:}
-
-This certificate defines a certificate authority (CA) you trust. With
-this certificate you will be able to check that you are connecting to a trusted
-OpenVAS server. This is checked if you have the ``Paranoia Level'' set
-to 2 or 3 and is is not checked with a ``Paranoia Level'' of 1. Note that
-you can set the Paranoia Level by hand in the nessusrc files or when
-first connecting to an OpenVAS server where you are asked explicitly.
-
-The default path for the Trusted CA is the filename used by the OpenVAS server
-itself. Thus, if you are running OpenVAS-Client on the same
-machine or have the same volume mounted, you can just use the default.
-
-If you are running OpenVAS-Client from a remote machine, you need to have a copy
-of the CA certificate and set the location of the certificate file
-manually.
-
-
-\section{Scan Options}
-
-This section explains the most important configuration options for
-a security scan.
-
-\subsection{General}
-
-This page covers all the general scan options. See the screenshot
-for the main window in section \ref{sec:MainWindow}.
-
-
-\paragraph{Port range}
-
-Ports that will be scanned by the OpenVAS server. You can enter single
-ports, such as {}``1-8000'' or more complex sets, such as
-{}``21,23,25,1024-2048,6000''.
-Put {}``-1'' for no portscan, or put {}``default'' to scan the
-default ports in the OpenVAS services file.
-
-
-\paragraph{Consider unscanned ports as closed}
-
-To save scanning time, you may ask the OpenVAS server to declare TCP ports
-it did not scan as closed. This will result in an incomplete audit
-but it will reduce scanning time and prevent the OpenVAS server from sending
-packets to ports you did not specify. If this option is disabled,
-the OpenVAS server will consider ports whose state it does not know
-as open.
-
-
-\paragraph{Number of hosts to test at the same time}
-
-Maximal number of hosts that the OpenVAS server will test at the same
-time. Be aware that the OpenVAS server will spawn max\_hosts max\_checks
-processes!
-
-
-\paragraph{Number of checks to perform at the same time}
-
-Maximal number of security checks that will be launched at the same
-time against each host. Be aware that the OpenVAS server will spawn
-max\_hosts x max\_checks processes!
-
-
-\paragraph{Path to CGIs}
-
-It is possible to check for the presence of CGIs in multiple paths
-like {}``/cgi-bin'', {}``/cgis'', {}``/home-cgis'' and so on.
-In that case, put all your paths here separated by colons. For instance:
-{}``/cgi-bin:/cgi-aws:/cgi''.
-
-
-\paragraph{Do a reverse lookup of the IP before testing it}
-
-If this option is set, the OpenVAS server will do a reverse lookup on the
-IP addresses before it tests them. This may slow down the whole test.
-
-
-\paragraph{Optimize the test}
-
-Security tests may ask the OpenVAS server to be launched if and only
-if some information gathered by other tests exists in the knowledge
-base, or if and only if a given port is open. This option speeds up
-the test, but may cause the OpenVAS server to miss some vulnerabilities. If you
-are paranoid, disable this option.
-
-
-\paragraph{Safe checks}
-
-Some security checks may harm the target server, by disabling the
-remote service temporarily or until a reboot. If you enable this option,
-the OpenVAS server will rely on banners instead of actually performing
-a security check. You will obtain a less reliable report, but you
-are less likely to disrupt functionality on the target system by doing a test.
-From a security point of view, we recommend you disable this option; from
-a system administrator point of view, we recommend you enable it.
-
-
-\paragraph{Designate hosts by their MAC address}
-
-If you enable this option, the hosts on the local network will be
-designated by their ethernet MAC address instead of their IP address.
-This is especially useful if you are using the OpenVAS server in a DHCP network.
-If unsure, disable this option.
-
-
-\paragraph{Port Scanner}
-
-This is the list of available port scanners. Port scanners are a special
-category of plugins and therefore presented separately from the other
-plugins. The list is only available if a connection to an OpenVAS server
-has been established. You can activate one or more of the scanners.
-Clicking on an entry shows the details for the respective scanner
-plugin.
-
-
-\subsection{Plugins}
-
-The plugins are stored on the OpenVAS server. Thus, to make a selection
-of the plugins to apply you need to connect to a server. Otherwise
-this page will remain empty.
-
-\IncludeImage[width=12cm]{images/mainwindow-plugins-en}
-
-The Plugins are separated into a number of families which can be activated or
-deactivated as a whole by checking the box to the right of family
-name. Also, a family can be expanded to show all of its member plugins
-where you can refine the selection by activating or deactivating single
-plugins using the checkbox to the right of the plugin name.
-
-The column {}``Warning'' contains a warning sign for some plugins.
-The warning sign means that this plugin may harm the target host by
-disabling the attacked service or by crashing the host. You should
-be careful when you enable it since it may disrupt functionality on the
-target server.
-
-Below the plugin list the total number of plugins loaded from the
-server is shown, together with the total number of currently selected
-plugin as well as the number of plugins shown due to an applied filter.
-
-The following actions are possible:
-
-
-\subparagraph{Enable all}
-
-Enables all plugins.
-
-
-\subparagraph{Disable all}
-
-Disables all plugins.
-
-
-\subparagraph{Expand all}
-
-Expands the plugin tree-list to maximum so that the list contains
-all plugins.
-
-
-\subparagraph{Collapse all}
-
-Only show the plugin families.
-
-
-\subparagraph{Enable dependencies at runtime}
-
-If you enable this option, the OpenVAS server will automatically enable the
-plugins needed by the set of plugins you selected.
-
-
-\subparagraph{Silent dependencies}
-
-If you enable this option, the OpenVAS server will not report data
-coming from the plugins that you did not specifically enable.
-
-
-\subparagraph{Filter}
-
-The filter dialog lets you select plugins with the characteristics
-you want. \textbf{Note} that you will erase your previous selection
-by applying a filter.
-
-
-\paragraph{Plugin information dialog}
-
-Double-clicking on a specific plugin title will raise a information
-dialog for the respective plugin.
-
-The information shown are the ones specified within the corresponding
-plugin.
-
-The following actions are possible in this dialog:
-
-
-\subparagraph{Set plugin timeout}
-
-Allows you to specify a timeout for the plugin.
-
-
-\subparagraph{Show dependencies}
-
-This lists the dependencies for the selected plugin. It also provides
-information on whether the dependencies are currently
-enabled or disabled.
-
-
-\subsection{Credentials}
-
-Some of the plugins allow to enter credentials to test certain applications,
-for example Samba or websites (HTTP). These plugins work the same way as the
-plugins listed in the {}``Plugin Preferences'' list.
-For better handling they are collected under {}``Credentials''.
-
-\IncludeImage[width=10cm]{images/mainwindow-credentials-en}
-
-
-\subsection{Plugin Preferences}
-
-Some of the plugins allow to refine with specific parameters. All
-of the configurable plugins' parameters are collected on this page
-where the user may modify the default values.
-
-\IncludeImage[width=10cm]{images/mainwindow-pluginprefs-en}
-
-Only a comparably small number of plugins offer a configuration.
-
-
-\subsection{Target Selection}
-
-\IncludeImage[width=12cm]{images/mainwindow-targetselection-en}
-
-
-
-\paragraph{Target(s)}
-
-The first host(s) that will be attacked by the OpenVAS server. The options
-below allow you to extend the test to a larger set of targets. You
-may define several targets by separating them with a comma
-(,). i.e. : {}``host1,host2''.
-
-A special syntax is {}``file:/some/where/targetlist.txt'' which
-means that the actual target names are loaded from that list.
-
-
-\paragraph{Read from file}
-
-A textfile can be specified that contains the list of targets. This
-textfile may contain comma-separated lists of host and also may contain
-many of such lines.
-
-
-\paragraph{Perform a DNS Zone transfer}
-
-The OpenVAS server will perform an AXFR request (that is, a zone transfer)
-to the target name server and will attempt to obtain the list of the
-hosts in the target domain. Then, it will test each host.
-
-
-\section{Reports}
-
-
-\subsection{Report Page of OpenVAS-Client}
-
-The report page consists of three elements. On the left hand a tree list
-allows you to browser via hosts, ports and severity to single reports.
-On top of this treelist is a selection for re-ordering the tree structure.
-On the right hand the text area contains the actual report text. The
-whole design is focused on supporting an explorative understanding
-of the scan results.
-
-\IncludeImage[width=13cm]{images/mainwindow-report-en}
-
-\subsection{Report Formats}
-
-The scan results can be exported into a number of formats. Basically
-it can be distinguished between three types of formats: interchange formats,
-editable documents and read-only documents. The last type is currently
-represented by the PDF Report file. With a capable viewer it allows you to
-browse back and forth through the document using the various inserted
-hyperlinks.
-
-For further information see the section \ref{sec:Reports} about the menu command
-{}``Report->Export''.
-
-\section{OpenVAS-Client Preferences}
-
-OpenVAS-Client allows you to specify some individual preferences that
-determine some ways how the client GUI works.
-
-\IncludeImage[width=10cm]{images/preferences-dlg-en}
-
-
-The following selection are available:
-
-
-\subsection{User Interface}
-
-
-\paragraph{Auto expand tree elements}
-
-In the left-hand treeview clicking on a task or a scope automatically
-expands the corresponding tree if checked.
-
-If not checked, the user has to manually click on the expand icon
-each time.
-
-\paragraph{Order by}
-
-This setting controls how the scan results are sorted in the report window. The
-default is to sort the results by host first, then by port and severity.
-Depending on your context, it might make more sense to choose the second option
-and sort the results by port first; for example, you might be more interested in
-a quick overview over which hosts are running a service on a certain port than
-in which ports are open on a certain host.
-
-\subsection{Connection to the OpenVAS server}
-
-
-\paragraph{Automatically connect}
-
-If this setting is enabled, OpenVAS-Client will try to connect to
-the server when a scope is executed. For user certificates without
-a password, this will work immediately. For password protected user
-certificates or simple password based authentication, the password
-will be stored in memory after a successful login until OpenVAS-Client
-is closed.
-
-\paragraph{Protocol version}
-
-This setting controls which protocol the client will ask the server to use for
-communication between client and server. Right now, it is possible to choose
-between NTP 1.2 (the legacy protocol used by Nessus) and OTP 1.0 (the upcoming
-OpenVAS Transport Protocol). Please be aware that the server will close the
-connection if the client asks for an unsupported protocol.
-
-\subsection{Plugin Cache}
-
-
-\paragraph{Cache plugin information when connecting}
-
-If this setting is enabled, OpenVAS-Client will create a cache for
-the respective scope containing all plugin information. This has essentially
-three effects:
-
-First, reconnecting the same scope might be much faster because MD5
-checksums are used to discover changed and new plugins. Only
-the changes will be downloaded. Of course, connecting to a different
-OpenVAS server will usually force a new download of all plugins.
-
-Second, all plugin information is available even when the client
-has no connection to the server. Thus you can review which plugins are selected
-and what the current plugin preferences are. Note that the selection
-might change after connecting for a actual scan because new plugins
-might become available and others might disappear.
-Loading the cache may take a couple of seconds. If you don't want
-this, switch off the option {}``Load plugin cache for scopes immediately''.
-
-Third, the downside of caching: The cache will consume several megabytes
-for each scope. If you do not have sufficient storage space available, you
-should disable this feature. If you want to remove the caches, search for the
-files {}``nessus\_plugin\_cache'' in your OpenVAS directory
-(the directory ``.openvas'' in your home directory). Simply deleting them is
-sufficient.
-
-
-\paragraph{Use plugin cache with reports}
-
-Enabling this setting will make OpenVAS-Client attach all Plugin Information
-to newly created scan reports. This allows to review the plugin selection
-and the plugin preferences for a report in the OpenVAS-Client GUI.
-So, this cache is for increasing transparency not performance.
-
-Again, the downside is that several megabytes of cache per report will
-be generated. Disable this option if you do not have sufficient storage space
-available. If you want to remove the caches, search for the files
-{}``nessus\_plugin\_cache'' in your Nessus directory
-(the directory ``.openvas'' in your home directory). Simply deleting them is
-sufficient.
-
-
-\paragraph{Load plugin cache for scopes immediately}
-
-Disabling this option will cause OpenVAS-Client to not automatically
-load a scope's cache when made active. You won't see the plugin selection
-nor the plugin preferences. So, in fact this option could remove the
-second effect of the above described option {}``Cache plugin information
-when connecting'' for the benefit of avoiding to load possibly huge
-caches once clicking on a scope entry.
-
-
-\subsection{Report}
-
-
-\paragraph{Include plugin details in PDF}
-
-Enabling this setting will make OpenVAS-Client add an appendix to
-each PDF Report containing the details of those plugins that produced
-relevant results for the report. They are linked within the PDF so
-that the information can easily be browsed.
-
-Be aware, however, that this could significantly increase the size
-of your PDF file. On average, you can expect two plugin descriptions
-to consume one page.
-
-\paragraph{Show script origin in report window}
-
-Enabling this option will cause OpenVAS-Client to show additional information
-in the report window regarding the origin of the reported security issue. If
-this option is enabled, these reports will contain the name and the OID of the
-NVT that reported the issue.
-
-\subsection{External Links in HTML/PDF}
-
-These settings determine the URLs for linking more information on
-OpenVAS NVTs, CVE/CAN and BugTraq IDs in HTML or PDF reports. The defaults as
-shown in the screenshots are recommended since these are the definitive
-sources for up-to-date information. The defaults are
-restored when the fields are left empty.
-
-In case you want to package an OpenVAS report with e.g. CVE/CAN details
-for offline-reading, you may enter an appropriate definition like
-``mitre/\%s/\%s/\%s.html''
-in case you have a directory structure relative to the report file
-with mitre/CVE/yyyy/nnnn.html and mitre/CAN/yyyy/nnnn.html where yyyy
-is the year and nnnn is the number of the record. Then you could package
-all files together.
-
-Note, that the strings defined here are inserted into the html link
-parameter ``href'' as they are. The tool ``htmldoc'' is used to produce
-a PDF out of this html report. Depending on the version and features
-the created links in the PDF file may be created differently.
-
-\clearpage
-
-\chapter{Knowledge Base}
-\compendiumauthor{}
-
-\clearpage
-
-\chapter{Performing Local Security Checks}
-\compendiumauthor{Jan-Oliver Wagner}
-\section{Debian Local Security Checks}
-
-This section explains how to run local security checks with OpenVAS. So far,
-this procedure has been tested only with Debian local security checks.
-
-\subsection{Prerequisites}
-
-To perform local security checks, you need a working OpenVAS-Server
-installation. Information on setting up and configuring OpenVAS-Server is
-available in chapter \ref{chap:Install-And-Configure-Server}.
-
-\subsection{Create users for local security checks}
-
-First, you need a key with certificate:
-
-\begin{verbatim}
-$ ssh-keygen -t rsa -f ~/.ssh/id_rsa_sshovas -C
-"OpenVAS-Local-Security-Checks-Key"
-$ openssl pkcs8 -topk8 -v2 des3 -in ~/.ssh/id_rsa_sshovas -out sshovas_rsa.p8
-\end{verbatim}
-
-Note: The comment (here: "OpenVAS-Local-Security-Checks-Key") must not
-contain spaces.
-Currently, you need a rsa pkcs8 key for OpenVAS local security checks.
-
-Now, for each target system:
-\begin{verbatim}
-# adduser --disabled-password sshovas
-Name: OpenVAS Local Security Checks
-# su - sshovas
-$ mkdir .ssh
-$ cp /some/path/id_rsa_sshovas.pub .ssh/authorized_keys
-$ chmod 500 .ssh
-$ chmod 400 .ssh/authorized_keys
-\end{verbatim}
-
-\subsection{Configure the local security checks in OpenVAS-Client}
-
-In Preferences, configure SSH Authorization:
-\begin{verbatim}
-SSH login name: sshovas
-SSH private key: ~/.ssh/sshovas_rsa.p8
-SSH key passphrase: ********
-SSH public key: ssh/id_rsa_sshovas.pub
-\end{verbatim}
-
-Note: It is actually not necessary to submit the public key, but currently this
-is necessary due to a bug inherited from Nessus.
-
-Next, make sure you select at least these plugins:
-\begin{itemize}
-\item Debian Local Security Checks/*
-\item Misc/Determine List of installed packages via SSH login
-\item Service Detection/Services
-\item Settings/Global variable settings
-\item Settings/SSH Authorization
-\end {itemize}
-or ensure dependencies are resolved at runtime (see checkboxes) if you select
-only some local security checks.
-
-\section{Windows Local Security Checks}
-
-In order to provide - analogous to the Linux Local Security Check - a framework
-for checking and testing for Microsoft Windows vulnerabilities, a new
-Application Programming Interface (API) was introduced by the OpenVAS team.
-
-This API (for the Nessus Attack Scripting Language, NASL) allows to check and
-examine binary files (e.g. DLLs) as well Microsoft Windows meta-data on
-Microsoft Windows machines by accessing the complete file system using default
-Windows administrative shares.
-
-The functionality is similar to the Nessus Windows Local Security checks.
-However, the OpenVAS solution is using samba (smbclient) and does not
-re-implement the binary SMB protocol in NASL.
-
-The advantage of this smbclient integration is to act more flexible on protocol
-changes on the SAMBA/CEFIS protocol side.
-
-\subsection{Preparing the OpenVAS Server}
-
-To install the WLSC, a few steps are required to be taken on the server that
-hosts and runs the actual scan daemon "openvasd".
-
-It depends on the operating system where you run the OpenVAS server, how the
-steps are carried out technically.
-
-\begin{enumerate}
-
-\item Install SAMBA (http://www.samba.org)
-
-Installation packages should be readily available for your operating system.
-
-\item Make sure that the binary "smbclient" in is the installation/execution
-path.
-
-\item Check the permissions of openvasd and smbclient: smbclient must be
-executable with the permissions of openvasd.
-
-\end{enumerate}
-
-\subsection{Preparing the Microsoft Windows target}
-
-The WLSC implementation has been tested on the following Microsoft Windows
-Operating Systems:
-\begin{itemize}
-\item Windows NT 4.0
-\item Windows 2000
-\item Windows XP SP2
-\item Windows XP SP3
-\item Windows Vista
-\end{itemize}
-Probably the WLSC is also compatible with other Microsoft Operating Systems.
-Once the SMB Port of a Windows target is accessible, the Operating System (OS)
-and SAMBA Version could be detected immediately and will be reported. For deeper
-tests the following steps are required:
-
-You need the Windows credentials for an administrative user. Usually this is the
-user name (Default is "Administrator") and the correct password for this user.
-There is no default password, this has been defined before during the Windows
-installation process.
-
-These credentials are entered in the OpenVAS-Client GUI as SMB Credentials and
-are used on every host in the target list.
-
-If you plan to scan a whole Windows Domain, you can enter the
-Domain-Administrative user and password instead of the target host credentials.
-
-Make sure the Windows-(personal) Firewall is disabled for the OpenVAS Server
-host, or a correct rule for the Test-Network is entered.
-
-\paragraph{Additional Note for Windows XP}
-
-For Windows XP it is important that "Easy Filesharing" is switched off.
-To disable this, the Windows Click-Path is: Windows Explorer/Tools/Folder
-Options/View (see screenshot below).
-
-Without this setting, "smbclient" is not able to retrieve files from the Windows
-System shares (\verb!C$,D$...!).
-
-\subsection{Executing the checks via OpenVAS-Client}
-
-Using the OpenVAS-Client you specify the credentials and the target host
-information will be reported as illustrated by the following two screenshots:
-
-\clearpage
-
-\chapter{Using Integrated Tools}
-
-\section{Security Local Auditing Daemon (SLAD)}
-\compendiumauthor{Jan-Oliver Wagner}
-\subsection{How to use Security Local Auditing Daemon (SLAD) with OpenVAS}
-
-Homepage: \hyperurl{http://www.dn-systems.org/slad.shtml}
-
-This description is a quick guide how you get first results with SLAD via
-OpenVAS. For real production mode you should make yourself familiar with the
-details of SLAD and its integrated tools. There is also the SLAD developer's and
-administrator's guide as PDF file.
-
-\begin{enumerate}
-
-\item Download SLADinstaller from
-\hyperurl{http://www.dn-systems.org/boss/slad2/sladinstaller-1.1.tar.gz}
-
-\item You may want to apply this patch:
-\begin{verbatim}
-diff -r -u sladinstaller-1.1-orig/gtk.cpp sladinstaller-1.1-openvas/gtk.cpp
---- sladinstaller-1.1-orig/gtk.cpp 2006-04-23 15:57:01.000000000 +0200
-+++ sladinstaller-1.1-openvas/gtk.cpp 2008-04-30 15:59:07.452562817 +0200
-@@ -299,8 +299,8 @@
- else
- dir="~";
-}
-- // and nessus directory
-- dir+="/.nessus";
-+ // and OpenVAS directory
-+ dir+="/.openvas";
- mkdir(dir.c_str(), 0700);
-
- std::string ip_;
-\end{verbatim}
-
-\item Compile sladinstaller by just typing "make", which works at least on a
-Debian GNU/Linux "Etch" 4.0. There is a file "INSTALL" which might provide some
-helpful hints.
-
-\item Prepare SSH Authorization: It is required to use a SSH key created
-following the example for ssh-keygen and openssl on the page about local
-security checks. Especially take care you create a RSA .p8 key file. Reason:
-sladinstaller would else create a key that is not usable with OpenVAS due to the
-migration from OpenSSL to GNU/TLS.
-
-\item Make sure SLAD is not installed yet on your target system. Is so, remove
-it this way:
-\begin{verbatim}
-# /opt/slad/bin/slad-uninstall.sh
-\end{verbatim}
-
-\item Run sladinstaller and fill out the entries. Take care you apply the SSH
-key you've just created on your own and don't let sladinstaller create one for
-you. Hostname defines the target system.
-
-\item It might be necessary you have to adjust the sshd configuration of the
-target system allow sladinstaller to log in. Just follow the hints given by
-sladinstaller.
-
-\item Finally, you need to install the file "slad.inc" (which is specific to
-your SLAD version) for your OpenVAS Server. Assume, SLAD is installed on the
-same system as the OpenVAS Server. Then it would execute this:
-\begin{verbatim}
-# cd /opt/slad/share/nessus_plugins/
-# /opt/slad/bin/sladd -s plugins | awk -f sladbuild.awk >
-/usr/local/openvas-production/lib/openvas/plugins/slad.inc
-\end{verbatim}
-
-\item Finally, run OpenVAS-Client and configure your task to scan the target
-where you installed SLAD and fill out the "SLAD init" preferences and, if
-wished,
-adjust the "SLAD run" preferences. A first scan will schedule the tasks, the
-next scan will retrieve the results that were collected so far (lsof is fast,
-John-the-ripper could take very long).
-\end{enumerate}
-
-\section{Nikto}
-\compendiumauthor{Michael Wiegand}
-
-Nikto is an Open Source (GPL) web server scanner which performs comprehensive
-tests against web servers for multiple items, including over 3500 potentially
-dangerous files/CGIs, versions on over 900 servers, and version specific
-problems on over 250 servers. Scan items and plugins are frequently updated and
-can be automatically updated (if desired).
-
-OpenVAS is able to recognize an installed version of Nikto and can integrate
-the results of a Nikto scan in the scan results.
-
-\subsection{Prerequisites}
-
-In order to be able to perform a Nikto scan from within OpenVAS, the following
-requirements must be met:
-\begin{itemize}
- \item There has to be a version of Nikto that can be found in the system path.
-The OpenVAS integration of Nikto is optimized for Nikto versions >= 2.0, but
-will probably work with older versions as well.
- \item The OpenVAS plugin for Nikto integration (\textit{nikto.nasl}) needs to
-be present and enabled. You can find the plugin in the section \textit{CGI
-abuses} in the plugin section of your client.
-\end{itemize}
-
-\subsection{Starting a Nikto scan}
-
-If the Nikto plugin is present and enabled, it will be executed with your next
-scan. The results returned by Nikto will be available together with the rest of
-the scan results.
-
-\subsection{Understanding Nikto results}
-
-Some web servers are (intentionally or unintentionally) configured to respond
-to requests for non-existent with an HTTP status code other than 404. This can
-be used to direct these requests from human users to a page with helpful
-information (like a sitemap), but tends to confuse security assessment tools
-like Nikto checking whether possibly sensitive or dangerous content can be
-accessed on the target server.
-
-The Nikto plugin is able to recognize this condition in most web servers and
-will (in the default setting) refuse to launch Nikto under these circumstances.
-You can however force the Nikto plugin to launch Nikto by enabling the option
-\textit{Force scan even without 404s} in the plugin preferences.
-
-If you enable this option, please be aware that the results of the Nikto scan
-are likely to contain false positives; because of the web server configuration
-described above Nikto may be convinced that certain files exist on the web
-server, even though the server simply redirected these requests to a generic
-page.
-
-This is especially true for older versions of Nikto (< 2.0); but even with
-newer versions you may need to manually evaluate whether the threats reported
-by Nikto are real threats or simply the result of the web server configuration.
-
-\clearpage
-
-\chapter{Developers Guide for NASL scripts}
-
-\section{Basic Structure of a NASL NASL Scripts}
-
-\compendiumauthor{Tim Brown}
-
-\subsection{API Documentation}
-
-\subsubsection{script\_oid()}
-
-This function is intended to replace \verb!script_id!, the current method of uniquely
-identifying NASL scripts. The logic behind this is that \verb!script_id! has only a single
-global namespace. With plans by several organisations to develop and contribute
-plugin feeds it was deemed necessary to introduce a new namespace that could be
-shared between each organisation.
-
-The current proposed implementation of this function is as follows. Any plugin that
-contains a \verb!script_id! call will automatically be given an OID from the namespace
-allocated for legacy plugins. Moreover \verb!script_oid! can only be used on plugins
-that do not have a \verb!script_id! set. The OID namespace for legacy plugins has the
-prefix "1.3.6.1.4.1.25623.1.0". The OpenVAS OID namespace is currently administered
-by Tim Brown.
-
-Both the client and server as well as the libraries on which they depend are being
-updated to support this functionality. You can detect if it is supported by checking
-OPENVAS\_NASL\_LEVEL is greater than 2206.
-
-\verb!script_oid! should be called like so:
-
-\begin{verbatim}
- ...
- if(description)
- {
- if (OPENVAS_NASL_LEVEL >= 2206)
- {
- script_oid("1.3.6.1.4.1.25623.1.0.90010");
- }
- else
- {
- script_id(90010);
- }
- ...
-\end{verbatim}
-
-\section{Writing WLSC NASL Scripts}
-
-\compendiumauthor{Carsten Koch Mauthe}
-
-The SMB-Client API is made available as \verb!smbcl_func.inc!. This file has to
-be included in any WLSC Script.
-
-\subsubsection{smbclientavail()}
-
-This function returns TRUE if smbclient can be used from within openvasd.
-It also sets the knowledge base item "SMB/smbclient". It should be called first
-in any WLSC Script.
-Example:
-
-\begin{verbatim}
- include("smbcl_func.inc");
- if(!get_kb_item("SMB/smbclient"))
- {
- smbclientavail();
- }
- if(get_kb_item("SMB/smbclient"))
- {
- do something;
- }
- else
- {
- report = string("SMBClient not found on this host !");
- security_note(port:0, proto:"SMBClient", data:report);
- exit(0);
- }
-\end{verbatim}
-
-\subsubsection{smbversion()}
-
-This function returns TRUE if successful and writes the DOMAIN, OS Version and
-SMB Server version to the knowledge base as items "SMB/DOMAIN", "SMB/OS" and
-"SMB/SERVER".
-
-
-\subsubsection{smbgetfile(share, filename, tmp\_filename)}
-
-Use this function to get a file from the target host and save this file locally
-using tmp\_filename. Returns TRUE if successful.
-Example:
-\begin{verbatim}
- tmp_filename = get_tmp_dir() + "tmpfile" + rand();
- orig_filename = "C:\Windows\systems32\ntdll.dll";
- smbgetfile(share: "C$", filename: orig_filename, tmp_filename: tmp_filename)
-\end{verbatim}
-
-\subsubsection{smbgetdir(share, dir, typ)}
-
-Use this function to get directory entries from the SMB source.
-\begin{description}
- \item[typ = 0:] All entries
- \item[typ = 1:] Only file entries
- \item[typ = 2:] Only directory entries
-\end{description}
-
-With this it is possible to check for one or more files or directories.
-Returns NULL or array of Strings containing found entries.
-Example:
-
-\begin{verbatim}
- r = smbgetdir(share: "C$", dir: "C:\Windows\systems32\*.dll", typ: 1);
-\end{verbatim}
-
-\subsubsection{GetPEFileVersion (tmp\_filename, orig\_filename)}
-
-This function returns the Version of Windows PE/32 executables like .exe or
-.dll. Together with smbgetfile, this can be used to check for Windows
-vulnerabilities.
-
-Example:
-\begin{verbatim}
- tmp_filename = get_tmp_dir() + "tmpfile" + rand();
- orig_filename = "C:\Windows\systems32\ntdll.dll";
- if(smbgetfile(share: "C$", filename: orig_filename,
- tmp_filename: tmp_filename))
- {
- v = GetPEFileVersion(tmp_filename:tmp_filename,
- orig_filename:orig_filename);
- if(v = "1.2.3.4")
- {
- ...
-\end{verbatim}
-
-\subsubsection{get\_windir()}
-
-This function returns the standard Windows folder WINNT or WINDOWS, depending on
-the OS found by "smbversion".
-
-\subsection{Example}
-
-This is a complete NASL test for a Windows Local Security Check. It can be found
-in the OpenVAS plugins as win\_CVE-2007-0043.nasl.
-
-\begin{verbatim}
-#
-# This script was written by
-# Carsten Koch-Mauthe
-#
-#
-# This script is released under the GNU GPLv2
-#
-# $Revision: 01 $
-
-if(description)
-{
- if (OPENVAS_NASL_LEVEL >= 2206)
- {
- script_oid("1.3.6.1.4.1.25623.1.0.90010");
- }
- else
- {
- script_id(90010);
- }
- script_version ("$Revision: 01 $");
- script_cve_id("CVE-2007-0043");
- name["english"] = ".NET JIT Compiler Vulnerability";
- script_name(english:name["english"]);
-
- desc["english"] =
-"The remote host is affected by the vulnerabilities described in CVE-2007-0043
-
-Checking if System.web.dll version is less than 2.0.50727.832
-
-Impact
- The Just In Time (JIT) Compiler service in Microsoft
- .NET Framework 1.0, 1.1, and 2.0 for Windows 2000, XP,
- Server 2003, and Vista allows user-assisted remote
- attackers to execute arbitrary code via unspecified
- vectors involving an unchecked buffer, probably a
- buffer overflow, aka .NET JIT Compiler Vulnerability.
- Checking if System.web.dll version is less than 2.0.50727.832
-
-References:
- http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-0043
-
-Solution:
- All users should upgrade to the latest version.
-
-
-Risk factor : High";
-
- script_description(english:desc["english"]);
- summary["english"] = "Test for .NET JIT Compiler Vulnerability";
- script_summary(english:summary["english"]);
- script_category(ACT_GATHER_INFO);
- script_copyright(english:"This script is under GPLv2");
- family["english"] = "Windows.NET";
- script_family(english:family["english"]);
- exit(0);
-}
-
-#
-# The code starts here
-#
-
-include("version_func.inc");
-include("smbcl_func.inc");
-
-if(!get_kb_item("SMB/smbclient"))
-{
- smbclientavail();
-}
-test_version = "2.0.50727.832";
-
-if(get_kb_item("SMB/smbclient"))
-{
- if(smbversion() == 0)
- {
- report = string("Error getting SMB-Data -> " +
- get_kb_item("SMB/ERROR"));
- security_note(port:0, proto:"SMBClient", data:report);
- exit(0);
- }
-}
-else
-{
- report = string("SMBClient not found on this host !");
- security_note(port:0, proto:"SMBClient", data:report);
- exit(0);
-}
-
-win_dir = get_windir();
-if(!isnull(win_dir))
-{
- path = win_dir+"Microsoft.NET\Framework\";
- filespec = "v2*";
- r = smbgetdir(share: "C$", dir: path+filespec, typ: 2);
- if(!isnull(r))
- {
- filespec = r[0] + "\" + "system.web.dll";
- r = smbgetdir(share: "C$", dir: path+filespec, typ: 1);
- if(!isnull(r))
- {
- tmp_filename = get_tmp_dir() + "tmpfile" + rand();
- orig_filename = path + filespec;
- if(smbgetfile(share: "C$", filename: orig_filename,
- tmp_filename: tmp_filename))
- {
- v = GetPEFileVersion(tmp_filename:tmp_filename,
- orig_filename:orig_filename);
- unlink(tmp_filename);
- if(version_is_less(version: v, test_version: test_version))
- {
- security_hole(port:0, proto:"SMB");
- report = report + "Fileversion : C$ " +
- orig_filename + " "+ v + string("\n");
- security_hole(port:0, proto:"SMB", data:report);
- }
- }
- else
- {
- report = string("Error getting SMB-File -> " +
- get_kb_item("SMB/ERROR")) + string("\n");
- security_note(port:0, proto:"SMB", data:report);
- }
- }
- }
- else
- {
- report = string(".NET V2xx not found/no access -> " +
- get_kb_item("SMB/ERROR")) + string("\n");
- security_note(port:0, proto:"SMB", data:report);
- }
-}
-
-exit(0);
-\end{verbatim}
-
-
-\clearpage
-
-\chapter{Developers Guide for OpenVAS Server and Client}
-\compendiumauthor{Jan-Oliver Wagner}
-\section{The OpenVAS Source Code Map}
-
-\section{Management of OpenVAS Change Requests}
-
-OpenVAS change requests describe proposed changes to one of the OpenVAS
-components. Though this is a formalized approach, this does not replace open
-discussion among interested developers on the mailing lists. In fact, these open
-discussions are the main source of change requests. This approach is intended
-to make the OpenVAS development process as transparent as possible to the
-OpenVAS developers as well as to the OpenVAS user community and other interested
-parties.
-
-You can find the most current change requests at:
-
-\hyperurl{http://www.openvas.org/openvas-crs.html}.
-
-A complete change request consists of the following sections:
-
-\begin{description}
- \item[Status:] A general description of the current status of this request.
-This could be something like ``in discussion'', ``agreed (voted +3) for release
-1.4'' or ``Step 1 and 2 implemented''.
- \item[Purpose:] A concise summary of the reasons for this change request.
- \item[References:] Links to corresponding issue tracker entries or mailing list
-discussions.
- \item[Rationale:] A more verbose explanation as to why this change request
-should be implemented.
- \item[Effects:] The effects should this change request be implemented,
-describing changes to API, compatibility, user experience and so on.
- \item[Design and Implementation:] Technical details regarding the
-implementation of this change request.
- \item[History:] Date, name and description of changes to this change request in
-ChangeLog format.
-\end{description}
-
-Change requests can be created by anybody; although most change requests are
-created by OpenVAS developers, this is not in any way meant to exclude
-anyone from creating their own change request and submitting it to the
-openvas-discuss mailing list. Authors of change requests are encouraged to
-discuss their ideas for change requests on this mailing or in the OpenVAS IRC
-channel (\#openvas on irc.oftc.net) before compiling the actual request.
-
-The OpenVAS developer community regularly votes on new change requests. Every
-OpenVAS developer can vote for or against a certain changed request by voting
-``+1'' (for), ``+/-0'' (somewhat for/against) or ``-1'' (against). After a
-number of days has passed, the votes are counted; a positive result means that
-the change request has been accepted and will be implemented in future versions
-of OpenVAS.
-
-The voting process itself is not yet fully formalized and subject to change;
-ideas and suggestions are welcome.
-
-\section{Submitting Patches}
-
-\section{Write-Access to Source Code Repository}
-
-Write access to the source code repository is granted by the project
-coordinators. If you want to able to commit changes to the source code
-repository, just drop a message on the openvas-devel mailing list.
-Usually you are asked to send your first changes as patches to the
-mailing list to demonstrate you know what you are doing. If these
-are accepted, it is also usual that you are immediately approved for
-write access to the source code repository.
-
-Note that that changes to the code repository are watched by several
-developers. Low quality changes or uncoordinated high-impact-changes
-might get reverted immediately.
-
-\section{Maintaining ChangeLog}
-
-Any main module of OpenVAS maintains a ``ChangeLog'' file in its
-root directory. It is a GNU-style ChangeLog and syntax highlighting
-for your favorite editor should work out of the box.
-
-Some rules for the ChangeLog file:
-
-\begin{itemize}
-\item Keep the GNU-style syntax for your new entries. Your syntax-highlighting
- editor will support you.
-\item Make atomic commits: Always include the updated ChangeLog file together with
- the changed files.
-\item List any changed file explicitly in the ChangeLog, even if there were many.
- See the ChangeLog file for examples how to write the change information.
-\end{itemize}
-
-Note: The ChangeLog is intentionally not created automatically. Before committing,
-developers are forced to reflect on the changes they did. This regularly leads
-to detection of suboptimal changes or identification of intermediate (try-out/debugging)
-changes that of course should not go to the main repository.
-
-The developer's ChangeLog is the base for writing the user's CHANGES when a new
-release is prepared.
-
-\section{Source Code Style Guide}
-
-Currently there is no complete definition of a style guide
-for the source code of OpenVAS.
-
-In fact, several styles have been mixed into OpenVAS over
-the last years, most inherited from the old Nessus times.
-
-However, some rules should always be followed when adding
-new code or when changing some source code lines anyway.
-For the rest, it makes sense to be close to the GNU coding style
-which you will find more or less applied already.
-
-\begin{itemize}
-
-\item Indention: Do not use tabulators at all, only regular spaces.
-
-\item Indention: Indent with a step of 2 space characters.
-
-\item Function definitions: Do not use old K\&R style.
-
-\end{itemize}
-
-\clearpage
-
-\chapter{Document License: CC by SA}
-
-\begin{latexonly}
-\urlstyle{normal}
-
-\begin{center}
-\IncludeImage[width=5cm]{images/cc-by-sa-logo}
-\textbf{Creative Commons Attribution-ShareAlike 3.0 Unported}
-\end{center}
-
-
-You are free to copy, distribute and transmit the work under the following
-conditions:
-
-\textit{Attribution.} You must give the original author credit.
-
-\textit{Share Alike.} If you alter, transform, or build upon this work,
-you may distribute the resulting work only under a license identical to this one.
-
-\begin{itemize}
- \item For any reuse or distribution, you must make clear to others the license terms of this work.
- \item Any of the above conditions can be waived if you get permission from the copyright holder.
-\end{itemize}
-
-
-Nothing in this license impairs or restricts the author's moral rights.\\
-To view the full licensing agreement, visit
-\begin{center}
- \normalsize\hyperurl{http://creativecommons.org/licenses/by-sa/3.0/}
-\end{center}
-or mail to Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA.
-\end{latexonly}
-
-\W \hyperurl{http://creativecommons.org/licenses/by-sa/3.0/}
-
-\end{document}
Modified: trunk/openvas-compendium/ChangeLog
===================================================================
--- trunk/openvas-compendium/ChangeLog 2008-08-01 17:58:36 UTC (rev 1092)
+++ trunk/openvas-compendium/ChangeLog 2008-08-01 18:08:03 UTC (rev 1093)
@@ -1,3 +1,7 @@
+2008-08-01 Jan-Oliver Wagner
+
+ * openvas-compendium.tex: New. Moved here from doc module.
+
2008-06-01 Michael Wiegand
Removing support of old XML report format according to
Copied: trunk/openvas-compendium/openvas-compendium.tex (from rev 1090, trunk/doc/openvas-compendium/openvas-compendium.tex)
From scm-commit at wald.intevation.org Fri Aug 1 20:23:10 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 20:23:10 +0200 (CEST)
Subject: [Openvas-commits] r1094 - trunk/openvas-compendium
Message-ID: <20080801182310.E246C4072C@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 20:23:10 +0200 (Fri, 01 Aug 2008)
New Revision: 1094
Removed:
trunk/openvas-compendium/images/
trunk/openvas-compendium/users-manual-de.lyx
trunk/openvas-compendium/users-manual.lyx
Modified:
trunk/openvas-compendium/ChangeLog
Log:
Removing the old english and german manual and associated files.
* images/mainwindow-kb-de.png, images/mainwindow-targetselection-de.png,
images/mainwindow-credentials-de.png, images/mainwindow-pluginprefs-de.png,
images/mainwindow-de.png, images/preferences-dlg-en.png,
images/mainwindow-targetselection-en.png, images/mainwindow-kb-en.png,
images/mainwindow-credentials-en.png, images/mainwindow-pluginprefs-en.png,
images/authentication-dlg-de.png, images/mainwindow-report-de.png,
images/mainwindow-en.png, images/mainwindow-plugins-de.png,
images/authentication-dlg-en.png, images/mainwindow-report-en.png,
images/mainwindow-plugins-en.png, images/preferences-dlg-de.png:
Removed.
* images/: Removed.
* users-manual-de.lyx, users-manual.lyx: Removed.
Modified: trunk/openvas-compendium/ChangeLog
===================================================================
--- trunk/openvas-compendium/ChangeLog 2008-08-01 18:08:03 UTC (rev 1093)
+++ trunk/openvas-compendium/ChangeLog 2008-08-01 18:23:10 UTC (rev 1094)
@@ -1,5 +1,24 @@
2008-08-01 Jan-Oliver Wagner
+ Removing the old english and german manual and associated files.
+
+ * images/mainwindow-kb-de.png, images/mainwindow-targetselection-de.png,
+ images/mainwindow-credentials-de.png, images/mainwindow-pluginprefs-de.png,
+ images/mainwindow-de.png, images/preferences-dlg-en.png,
+ images/mainwindow-targetselection-en.png, images/mainwindow-kb-en.png,
+ images/mainwindow-credentials-en.png, images/mainwindow-pluginprefs-en.png,
+ images/authentication-dlg-de.png, images/mainwindow-report-de.png,
+ images/mainwindow-en.png, images/mainwindow-plugins-de.png,
+ images/authentication-dlg-en.png, images/mainwindow-report-en.png,
+ images/mainwindow-plugins-en.png, images/preferences-dlg-de.png:
+ Removed.
+
+ * images/: Removed.
+
+ * users-manual-de.lyx, users-manual.lyx: Removed.
+
+2008-08-01 Jan-Oliver Wagner
+
* openvas-compendium.tex: New. Moved here from doc module.
2008-06-01 Michael Wiegand
Deleted: trunk/openvas-compendium/users-manual-de.lyx
===================================================================
--- trunk/openvas-compendium/users-manual-de.lyx 2008-08-01 18:08:03 UTC (rev 1093)
+++ trunk/openvas-compendium/users-manual-de.lyx 2008-08-01 18:23:10 UTC (rev 1094)
@@ -1,3649 +0,0 @@
-#LyX 1.4.3 created this file. For more info see http://www.lyx.org/
-\lyxformat 245
-\begin_document
-\begin_header
-\textclass article
-\begin_preamble
-\usepackage{times}[12pt]
-\end_preamble
-\language ngerman
-\inputencoding auto
-\fontscheme default
-\graphics default
-\paperfontsize default
-\spacing single
-\papersize a4paper
-\use_geometry false
-\use_amsmath 1
-\cite_engine basic
-\use_bibtopic false
-\paperorientation portrait
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\defskip medskip
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes true
-\end_header
-
-\begin_body
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size largest
-OpenVAS-Client Benutzerhandbuch
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename OpenVAS-logo.png
- keepAspectRatio
- clip
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size large
-$Date: 2006-05-19 09:58:15 $
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size large
-Renaud Deraison
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size large
-Jan-Oliver Wagner
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-Deutsche Übersetzung:
-\end_layout
-
-\begin_layout Standard
-\align center
-Frank Koormann und
-\end_layout
-
-\begin_layout Standard
-\align center
-Jan-Oliver Wagner
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace vfill
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-
-\newpage
-
-\begin_inset LatexCommand \tableofcontents{}
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section*
-Über dieses Dokument
-\end_layout
-
-\begin_layout Standard
-Dieses Dokument beschreibt die Verwendung des OpenVAS oder Nessus Server
- über die GTK+ GUI
-\begin_inset Quotes eld
-\end_inset
-
-OpenVAS-Client
-\begin_inset Quotes erd
-\end_inset
-
-.
- Die Beschreibung deckt unter Umständen nicht die gesamte Funktionalität
- von OpenVAS oder Nessus Server ab, noch erhebt sie Anspruch auf Vollständigkeit.
-\end_layout
-
-\begin_layout Standard
-Bitte beachten Sie, dass es eine Namensänderung von NessusClient nach OpenVAS-Cl
-ient etwa Anfang Juli 2007 gab.
- NessusClient 1.x wird seitdem als OpenVAS-Client weiterentwickelt während
- der vollständig neu entwickelte NessusClient 3.x auf QT anstatt GTK+ basiert
- und auch keine Freie Software mehr ist.
-\end_layout
-
-\begin_layout Standard
-Aufgrund dieser Namensänderung können in diesem Handbuch noch entsprechende
- Inkonsistenzen vorliegen.
-
-\end_layout
-
-\begin_layout Section
-Überblick
-\end_layout
-
-\begin_layout Standard
-Das
-\begin_inset Quotes eld
-\end_inset
-
-Nessus
-\begin_inset Quotes erd
-\end_inset
-
--Projekt bietet einen leistungsfähigen, aktuellen und leicht benutzbaren
- Security-Scanner als Freie Software unter der GNU General Public Licence
- (GPL).
- Mit Nessus können Sie Computer-Netzwerke im Fernzugriff prüfen und festzustelle
-n, ob die
-\begin_inset Quotes eld
-\end_inset
-
-bösen Jungs" (auch 'Cracker') eindringen oder es anderweitig missbrauchen
- können.
-\end_layout
-
-\begin_layout Paragraph
-Intelligentes Scannen
-\end_layout
-
-\begin_layout Standard
-Im Gegensatz zu vielen anderen Security-Scannern trifft Nessus keine Voraussetzu
-ngen.
- Z.B sind Scans einzelner Dienste nicht an bestimmte Ports gebunden: Wenn
- Sie etwa einen WWW-Server an Port 1234 betreiben, so wird Nessus ihn entdecken
- und auf Sicherheitslücken überprüfen.
- Ebenso werden Sicherheitslücken nicht einfach anhand von Versionsnummern
- installierter Dienste geschätzt, sondern es wird versucht, vermeintliche
- Sicherheitslücken tatsächlich auszunutzen.
- Damit kann geprüft werden ob Fixes eine Lücke auch tatsächlich geschlossen
- haben.
-
-\end_layout
-
-\begin_layout Paragraph
-Modulare Architektur
-\end_layout
-
-\begin_layout Standard
-Die Klient/Server Architektur von Nessus erlaubt eine flexible Installation
- von Scanner (der Server) und Benutzeroberfläche (der Klient) in vielfältigen
- Konfigurationen.
- Dadurch reduzieren sich Installations- und Betreuungsaufwand: Ein Server
- kann von vielen Klienten benutzt werden.
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-Weitere Funktionen des Nessus Security Scanner:
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Plugin Architektur
-\end_layout
-
-\begin_layout Standard
-\noindent
-Jeder Sicherheitstest ist als externes Plugin implementiert.
- Dadurch können leicht eigene Tests hinzugefügt werden, ohne direkt in den
- Code des Nessus Servers (
-\family typewriter
-nessusd
-\family default
-) einzugreifen.
- Eine vollständige Liste der verfügbaren Plugins findet sich unter http://cgi.nes
-sus.org/plugins.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-CVE kompatibel
-\end_layout
-
-\begin_layout Standard
-\noindent
-Jedes Plugin enthält einen Bezug zum CVE-Verzeichnis (Common Vulnerabilities
- and Exposures) für Administratoren für weitere Informationen zu veröffentlichte
-n Sicherheitslücken.
- Plugins bieten außerdem Verweise zu
-\series bold
-CERT, Bugtraq
-\series default
- und Meldungen von Herstellern.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-NASL
-\end_layout
-
-\begin_layout Standard
-\noindent
-Der Nessus Security-Scanner enthält NASL (Nessus Attack Scripting Language),
- eine Programmiersprache speziell für die einfache und schnelle Entwicklung
- von Sicherheitstests.
- Diese Tests können auch in C implementiert werden.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Aktuelle Datenbank von Sicherheitslücken/-tests
-\end_layout
-
-\begin_layout Standard
-\noindent
-Das Nessus-Projekt konzentriert sich auf die Entwicklung von Tests für aktuelle
- Sicherheitslücken.
- Die Datenbank der Sicherheitstests wird täglich aktualisiert, die neuesten
- Tests sind unter http://www.nessus.org/scripts.php sowie dem FTP Server und
- seinen Spiegelservern verfügbar.
-
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Unbegrenzte Anzahl simultaner Tests
-\end_layout
-
-\begin_layout Standard
-\noindent
-Abhängig von der Leistungsfähigkeit des Rechners auf dem der Nessus Server
- läuft können viele Host-Rechner gleichzeitig überprüft werden.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Flexible Dienste-Erkennung
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus verlässt sich nicht darauf, dass der zu überprüfende Host-Rechner
- den von der IANA vorgegebenen Portnummern entsprechend konfiguriert ist.
- Ein FTP-Server wird auch an einem
-\begin_inset Quotes eld
-\end_inset
-
-Nicht-Standard-Port
-\begin_inset Quotes erd
-\end_inset
-
- erkannt (z.B.
- an Port 31337), ebenso ein WWW-Server an Port 8080.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Mehrfache Dienste
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus beendet Scans nicht, sobald ein zu prüfender Dienst an einem Port
- gefunden wurde: Laufen auf dem Host-Rechner z.B.
- zwei (oder noch mehr) WWW-Server an Port 80 und 8080, so wird Nessus alle
- einzeln testen.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Kooperation von Tests
-\end_layout
-
-\begin_layout Standard
-\noindent
-Die von Nessus durchgeführten Tests nutzen von anderen Tests bereits vorliegende
- Informationen: Bietet ein FTP-Server beispielsweise keinen anonymen Login
- (durch einen Test ermittelt), so werden keine weiteren Tests ausgeführt,
- die ausschließlich anonyme Logins betreffende Sicherheitslücken überprüfen.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Umfangreiche Berichte
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus listet nicht nur auf, welche Lücken entdeckt wurden, sondern bietet,
- soweit verfügbar, auch Hinweise, wie die Lücken geschlossen werden können.
- Zur Bewertung der Dringlichkeit von Gegenmaßnahmen wird jede Sicherheitslücke
- einem Risiko-Level zugeordnet (von niedrig bis sehr hoch).
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Export von Berichten
-\end_layout
-
-\begin_layout Standard
-\noindent
-Der Nessus-Klient kann Berichte als XML, HTML, ASCII, LaTeX, PDF und leicht
- zu parsende Dateien exportieren.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Volle SSL-Unterstützung
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus kann SSL-bezogene Dienste https, smtps, imaps, u.a.
- testen.
- Darüber hinaus kann Nessus mit einem Zertifikat versehen werden und so
- in PKI-basierten Umgebungen eingesetzt werden.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Intelligente Plugins (optional)
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus erkennt, welche Tests auf einen Host-Rechner angewandt werden sollten.
- Dies verhindert z.B.
- dass Sendmail-Sicherheitslücken auf einem Mail-Server mit Postfix untersucht
- werden.
- Diese Option nennt sich "Test optimieren".
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Nicht-destruktive Scans (optional)
-\end_layout
-
-\begin_layout Standard
-\noindent
-Der oben beschriebene Ansatz, Sicherheitslücken tatsächlich auszutesten,
- kann dazu führen, dass Dienste abstürzen.
- Soll dies vermieden werden so können
-\begin_inset Quotes eld
-\end_inset
-
-Sichere Prüfungen" durchgeführt werden.
- Nessus verlässt sich dann auf Kennungen der Dienste anstatt durch Testen
- von Lücken zu untersuchen, ob tatsächlich ein Sicherheitsproblem vorliegt.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Unabhängige Entwickler
-\end_layout
-
-\begin_layout Standard
-\noindent
-Die Nessus-Entwickler sind nicht abhängig von anderen Software-Herstellern.
- Es gibt keinen Grund, eine Sicherheitslücke in Programm XYZ zu verschweigen.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Erreichbarkeit der Entwickler
-\end_layout
-
-\begin_layout Standard
-\noindent
-Sie vermissen eine Funktion in Nessus? Nehmen Sie einfach Kontakt mit den
- Entwicklern auf, unter http://www.nessus.org/contact/ oder auf der Nessus
- Mailing-Liste.
- Wir antworten und sind offen für sinnvolle Erweiterungen.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Transparentes Bug-Tracking-System.
-\end_layout
-
-\begin_layout Standard
-\noindent
-Sie haben einen Bug gefunden? Melden Sie ihn bitte unter http://bugs.nessus.org.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Umfangreiche Tests
-\end_layout
-
-\begin_layout Standard
-\noindent
-Es gibt mehr als 7000 Nessus Tests (und es werden ständig mehr!), die in
- 23 verschieden Gruppen unterteilt sind:
-\end_layout
-
-\begin_layout Itemize
-Hintertüren (Backdoors)
-\end_layout
-
-\begin_layout Itemize
-CGI Lücken
-\end_layout
-
-\begin_layout Itemize
-CISCO
-\end_layout
-
-\begin_layout Itemize
-Denial of Service (DoS)
-\end_layout
-
-\begin_layout Itemize
-finger Lücken
-\end_layout
-
-\begin_layout Itemize
-Firewalls
-\end_layout
-
-\begin_layout Itemize
-FTP
-\end_layout
-
-\begin_layout Itemize
-Erlangung einer remote-Shell
-\end_layout
-
-\begin_layout Itemize
-Erlangung von Root-Rechten (remote)
-\end_layout
-
-\begin_layout Itemize
-Allgemein
-\end_layout
-
-\begin_layout Itemize
-Verschiedenes
-\end_layout
-
-\begin_layout Itemize
-Netware
-\end_layout
-
-\begin_layout Itemize
-NIS
-\end_layout
-
-\begin_layout Itemize
-Port Scanner
-\end_layout
-
-\begin_layout Itemize
-Remote Dateizugriff
-\end_layout
-
-\begin_layout Itemize
-RPC
-\end_layout
-
-\begin_layout Itemize
-Einstellungen
-\end_layout
-
-\begin_layout Itemize
-SMTP Probleme
-\end_layout
-
-\begin_layout Itemize
-SNMP
-\end_layout
-
-\begin_layout Itemize
-Ungetestet
-\end_layout
-
-\begin_layout Itemize
-Nutzlose Dienste
-\end_layout
-
-\begin_layout Itemize
-Windows
-\end_layout
-
-\begin_layout Itemize
-Windows: Benutzer-Verwaltung
-\end_layout
-
-\begin_layout Section
-Installation
-\end_layout
-
-\begin_layout Standard
-Bitte beachten Sie, dass die getestete Veröffentlichung des Nessus Entwickler-Te
-ams der Quelltext von Nessus ist.
- Binär-Pakete sind sehr wahrscheinlich für die meisten Stadard-Betriebssysteme
- erhältlich, aber nicht notwendigerweise durch das Nessus Entwickler-Team
- getestet.
-\end_layout
-
-\begin_layout Standard
-Für Betriebssysteme die hier nicht aufgelistet sind können trotzdem durchaus
- gut gepflegte Pakete vorliegen.
-\end_layout
-
-\begin_layout Subsection
-Aus dem Quelltext
-\end_layout
-
-\begin_layout Standard
-Der übliche Weg einer ganz grundlegenden Installation beginnt mit den Quellen
- als CVS Snapshot oder einem tar-Archiv (tar-ball) des Quelltextes.
- Mit der Kommando-Sequenz
-\begin_inset Quotes eld
-\end_inset
-
-./configure ; make ; make install
-\begin_inset Quotes erd
-\end_inset
-
- läßt sich das Modul konfigurieren, kompilieren und installieren.
- Wie üblich enthält das Paket Dateien mit Detail-Informationen zur Konfiguration
- und Installation.
- Lesen Sie diese bitte zunächst! Erst danach sollten Sie mit der Installation
- fortfahren.
-\end_layout
-
-\begin_layout Subsection
-Debian GNU/Linux
-\end_layout
-
-\begin_layout Standard
-Debian unterstützt Nessus-Pakete aktiv.
- Bitte lesen Sie die Debian Dokumentation zur Installation von Standard-Paketen.
-
-\end_layout
-
-\begin_layout Subsubsection
-Debian
-\begin_inset Quotes eld
-\end_inset
-
-Woody
-\begin_inset Quotes erd
-\end_inset
-
- 3.0
-\end_layout
-
-\begin_layout Standard
-Die offizielle Version von Nessus für Woody ist 1.0.10.
- Diese ist vollkommen veraltet und es sollte weder der Nessus Server noch
- Klient in dieser Version verwendet werden!
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client hat anspruchslose Abhängigkeiten zu anderen Paketen während
- der Kompilation und zur Laufzeit.
- Daher könnte es leicht möglich sein, sogenannte
-\begin_inset Quotes eld
-\end_inset
-
-Backports
-\begin_inset Quotes erd
-\end_inset
-
- für Woody von neueren Debian Quell-Paketen von OpenVAS-Client herzustellen.
-\end_layout
-
-\begin_layout Subsubsection
-Debian
-\begin_inset Quotes eld
-\end_inset
-
-Sarge
-\begin_inset Quotes erd
-\end_inset
-
- 3.1
-\end_layout
-
-\begin_layout Standard
-Die offizielle Version von Nessus für Sarge ist 2.2.3.
- OpenVAS-Client ist kompatibel zu diesem Nessus Server, aber es ist empfehlenswe
-rt Nessus Server wegen Fehlerkorrekturen auf neuere Versionen zu aktualisieren.
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client hat anspruchslose Abhängigkeiten zu anderen Paketen während
- der Kompilation und zur Laufzeit.
- Daher könnte es leicht möglich sein, sogenannte
-\begin_inset Quotes eld
-\end_inset
-
-Backports
-\begin_inset Quotes erd
-\end_inset
-
- für Sarge von neueren Debian Quell-Paketen von OpenVAS-Client herzustellen.
-\end_layout
-
-\begin_layout Subsubsection
-Debian
-\begin_inset Quotes eld
-\end_inset
-
-Etch
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Aktuell ist Etch die Testing-Version von Debian, also im fluß.
- Mindestens Nessus Version 2.2.7 ist enthalten.
- Es steht zu erwarten, dass OpenVAS-Client Pakete verfügbar werden, sobald
- OpenVAS-Client veröffentlicht wird.
-\end_layout
-
-\begin_layout Subsection
-RedHat Linux
-\end_layout
-
-\begin_layout Standard
-Im Download-Bereich von www.nessus.org finden Sie evtl.
- RPM Pakete für RedHat und Fedora welche von Tenable Network Security bereitgest
-ellt werden.
-\end_layout
-
-\begin_layout Subsubsection
-Fedora Core 4 und 5
-\end_layout
-
-\begin_layout Standard
-Diese Distribution führt aktiv eigene Nessus Pakete im Extras-Bereich.
- Wenn Sie eine neuere Version als die aktuell angebotene benötige, so finden
- Sie auch hier Backports.
- Bei der Suche nach entsprechenden RPM-Pakete können Ihnen rpmfind.net oder
- ähnliche Dienste helfen.
-\end_layout
-
-\begin_layout Standard
-Es existiert zum aktuellen Zeitpunkt noch kein bei Fedora gepflegtes Paket
- für OpenVAS-Client.
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client hat anspruchslose Abhängigkeiten zu anderen Paketen während
- der Kompilation und zur Laufzeit.
- Daher könnte es leicht möglich sein, sogenannte
-\begin_inset Quotes eld
-\end_inset
-
-Backports
-\begin_inset Quotes erd
-\end_inset
-
- von OpenVAS-Client herzustellen oder sogar die Pakete direkt zu installieren.
-\end_layout
-
-\begin_layout Subsection
-SUSE Linux
-\end_layout
-
-\begin_layout Standard
-Im Download-Bereich von www.nessus.org finden Sie evtl.
- RPM Pakete für SUSE welche von Tenable Network Security bereitgestellt
- werden.
-\end_layout
-
-\begin_layout Subsubsection
-SUSE Linux 9.2
-\end_layout
-
-\begin_layout Standard
-Die aktuellste Version der Nessus Serie 2.0 ist Teil der Distribution.
- Es wird dringend empfohlen auf die aktuellste Version der 2.2 Serie zu aktualisi
-eren.
- Wenn Sie eine neuere Version benötigen, so finden Sie auch hier Backports.
- Bei der Suche nach entsprechenden RPM-Pakete können Ihnen rpmfind.net oder
- ähnliche Dienste helfen.
-\end_layout
-
-\begin_layout Standard
-Es existiert zum aktuellen Zeitpunkt noch kein bei SUSE gepflegtes Paket
- für OpenVAS-Client.
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client hat anspruchslose Abhängigkeiten zu anderen Paketen während
- der Kompilation und zur Laufzeit.
- Daher könnte es leicht möglich sein, sogenannte
-\begin_inset Quotes eld
-\end_inset
-
-Backports
-\begin_inset Quotes erd
-\end_inset
-
- von OpenVAS-Client herzustellen oder sogar die Pakete direkt zu installieren.
-\end_layout
-
-\begin_layout Subsection
-MS Windows
-\end_layout
-
-\begin_layout Subsubsection
-Windows XP SP2
-\end_layout
-
-\begin_layout Standard
-Für Windows ist ein reguläres Setup-Paket für OpenVAS-Client verfügbar.
- Es sollte die Bezeichnung
-\shape italic
-OpenVAS-ClientN.N.N-setup-LL.exe
-\shape default
- haben.
- Rufen Sie den Installer direkt auf oder benutzen Sie den Windows Software-Manag
-er.
- mit letzterem können Sie Nessus auch leicht und vollständig wieder entfernen.
- N.N.N entspricht der Version von Nessus, z.B.
- 1.0.0.
- LL steht für die Sprache wobei
-\begin_inset Quotes eld
-\end_inset
-
-en
-\begin_inset Quotes erd
-\end_inset
-
- die englische Version ist,
-\begin_inset Quotes eld
-\end_inset
-
-de
-\begin_inset Quotes erd
-\end_inset
-
- die deutsche und
-\begin_inset Quotes eld
-\end_inset
-
-sv
-\begin_inset Quotes erd
-\end_inset
-
- die schwedische.
-\end_layout
-
-\begin_layout Subsection
-Migration des Nessus GTK Klient von Version 2.2
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client nutzt anderes Konzept,
-\begin_inset Quotes eld
-\end_inset
-
-Session
-\begin_inset Quotes erd
-\end_inset
-
--Daten zu speichern als der Nessus GTK Client der in Nessus 2.2 enthalten
- war.
- Tatsächlich wurde das gesamte Konzept von Aufgabe (task), Bereich (scope)
- und Report (report) grundlegend erneuert.
-\end_layout
-
-\begin_layout Standard
-Der Hauptunterschied: Nessus GTK Klienten bis hin zu Version 2.2 beachten
- zur Konfiguration eine einzelne Datei
-\begin_inset Quotes eld
-\end_inset
-
-.nessusrc
-\begin_inset Quotes erd
-\end_inset
-
- im Heimat-Verzeichnis des Benutzers.
- Neuere Versionen nutzen eine Verzeichnis-Struktur mit dem Hauptverzeichnis
-
-\begin_inset Quotes eld
-\end_inset
-
-.nessus
-\begin_inset Quotes erd
-\end_inset
-
- im Heimat-Verzeichnis des Benutzers.
-
-\end_layout
-
-\begin_layout Standard
-Dennoch treten keine Konflikte auf, wenn Sie eine neue Nessus-Version starten:
- Eine vorhandene Datei
-\begin_inset Quotes eld
-\end_inset
-
-.nessusrc
-\begin_inset Quotes erd
-\end_inset
-
- wird als Vorlage für die globalen Einstellungen (siehe unten) genutzt.
- Die Konfiguration Ihres Nessus Klient 2.2 wird also die Voreinstellung für
- OpenVAS-Client.
-\end_layout
-
-\begin_layout Standard
-Selbst wenn Sie anschließend wieder einen Nessus GTK Klient 2.2 starten,
- kann dieser weiterhin die erhalten gebliebenen Einstellungen in der Datei
-
-\begin_inset Quotes eld
-\end_inset
-
-.nessusrc
-\begin_inset Quotes erd
-\end_inset
-
- nutzen.
-\end_layout
-
-\begin_layout Section
-Der erste Report
-\end_layout
-
-\begin_layout Standard
-Dieser Abschnitt dient als kurze Einführung für neue Anwender in die Arbeit
- mit Nessus.
- Die notwendigen Schritte zur Durchführung eines ersten Sicherheits-Scans
- werden dargestellt.
- Es wird empfohlen, nach einem ersten erfolgreichen Scan die weitere Abschnitte
- zur Nutzung von OpenVAS-Client durchzuarbeiten.
-\end_layout
-
-\begin_layout Subsection
-Starten von OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-Auf jedem UNIX-artigem System können Sie einfach
-\begin_inset Quotes eld
-\end_inset
-
-OpenVAS-Client
-\begin_inset Quotes erd
-\end_inset
-
- in einer Shell eingeben.
- Selbstverständlich sollte X Windows laufen.
-\end_layout
-
-\begin_layout Standard
-Für Debian GNU/Linux, SUSE Linux, RedHat/Fedora und MS Windows werden zusätzlich
- Menü-Einträge in der Benutzeroberfläche erzeugt, wenn Sie eines der oben
- dargestellten Installations-Pakete benutzen.
-\end_layout
-
-\begin_layout Subsection
-Der Nessus Scan Assistent
-\end_layout
-
-\begin_layout Standard
-Der Nessus Scan Assistent kann Sie als Anfänger bei einem ersten Scan unterstütz
-en.
- Zweck des Assistenten ist es, alle für einen Scan notwendigen Parameter
- logisch und selbsterklärend zusammen zu fassen.
-\end_layout
-
-\begin_layout Standard
-
-\series bold
-Dennoch sollten Sie beachten
-\series default
-, dass ein Scan durchgeführt mit Unterstützung des Assistenten auf den explizit
- gespeicherten globalen Einstellungen basiert.
- Wenn Sie in den globalen Einstellungen bereits einige gefährliche Optionen
- aktiviert haben, so werden diese auf den konkreten Scan vererbt!
-\end_layout
-
-\begin_layout Section
-Grundlagen von OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-Dieser Abschnitt stellt alle grundlegenden Elemente von OpenVAS-Client vor
- und beschreibt die typische Anwendung des Klient.
- Spätere Abschnitte beschreiben spezielle Funktionen des Klienten und richten
- sich an fortgeschrittene Anwender.
-\end_layout
-
-\begin_layout Subsection
-Das Hauptfenster
-\end_layout
-
-\begin_layout Standard
-Das Hauptfenster von OpenVAS-Client teilt sich in zwei wichtige Bereiche:
- Links bietet eine Baumstruktur eine Übersicht lokal gespeicherter Aufgaben,
- Bereiche und Reporte.
- Im rechten Bereich finden sich Karteikarten mit Kommentaren, Einstellungen
- und Reporte.
- Hier lassen sich Scans einstellen und kommentieren und Ergebnisse sichten.
- Beachten Sie, dass die Karte der Einstellungen selbst wieder eine Sammlung
- von Karten enthält.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-de.png
- width 100text%
- keepAspectRatio
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Nach dem ersten Start von OpenVAS-Client enthält die Baumstruktur nur einen
- Eintrag: Globale Einstellungen.
- Dies sind die Voreinstellungen für OpenVAS-Client.
- Diese berücksichtigen keine bestimmte Auswahl an Plugins, dafür ist eine
- Verbindung zu einem Nessus Server notwendig.
- Sie müssen eine Verbindung zu einem Server aufbauen und dann die Einstellungen
- für eine Auswahl von Plugins angeben.
- Speichern Sie dann Ihre bevorzugten Voreinstellungen über den Menüpunkt
-
-\begin_inset Quotes eld
-\end_inset
-
-Globale Einstellungen speichern
-\begin_inset Quotes erd
-\end_inset
-
- des Menüs
-\begin_inset Quotes eld
-\end_inset
-
-Datei
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsubsection
-Aufgaben
-\end_layout
-
-\begin_layout Standard
-Der Sinn von Aufgaben ist es, alle Aktionen eines Oberthemas zusammen zu
- fassen.
- Oberthemen sind z.B.
-
-\begin_inset Quotes eld
-\end_inset
-
-Test aller Rechner am Standort ABC
-\begin_inset Quotes erd
-\end_inset
-
- oder
-\begin_inset Quotes eld
-\end_inset
-
-Kunde XYZ GmbH
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-Einer Aufgabe kann ein Kommentar zugeordnet werden, der das Oberthema detaillier
-ter beschreibt.
- Hier können auch weitere wichtige Informationen oder Hinweise angegeben
- werden: Etwa wann die nächste Serie von Scans durchgeführt werden soll
- oder auf welcher Vertragsgrundlage die Scans durchgeführt werden.
-\end_layout
-
-\begin_layout Standard
-Eine Aufgabe hat keine Optionen oder Reporte.
- Sie stellt nur eine Sammlung von Bereichen dar.
-\end_layout
-
-\begin_layout Standard
-Mögliche Aktionen bezüglich Aufgaben:
-\end_layout
-
-\begin_layout Paragraph
-Neu
-\end_layout
-
-\begin_layout Standard
-Erzeugt eine neue Aufgabe mit dem Titel
-\begin_inset Quotes eld
-\end_inset
-
-unbenannte Aufgabe
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Paragraph
-Umbenennen
-\end_layout
-
-\begin_layout Standard
-Der Titel einer Aufgabe kann entweder direkt in der Baumstruktur durch Anklicken
- des Titels oder durch Auswahl des entsprechenden Menü-Eintrags geändert
- werden.
-\end_layout
-
-\begin_layout Paragraph
-Löschen
-\end_layout
-
-\begin_layout Standard
-Löschen einer Aufgabe bedeutet das Löschen aller zugehörigen Bereiche! Daher
- erfolgt eine Sicherheitsabfrage vor der eigentlichen Löschung.
-\end_layout
-
-\begin_layout Subsubsection
-Bereiche
-\end_layout
-
-\begin_layout Standard
-Ein Bereich kann als Teil-Aufgabe angesehen werden: Er bezeichnet einen
- bestimmten Sicherheits-Scan.
- Der Titel sollte aussagekräftig das Ziel des Scans beschreiben, z.B.:
-\begin_inset Quotes eld
-\end_inset
-
-Behutsamer Scan des produktiven Web-Servers
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-Aggressiver Scan des Web-Server Test-Systems
-\begin_inset Quotes erd
-\end_inset
-
- oder
-\begin_inset Quotes eld
-\end_inset
-
-Alle Sun Workstations
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-Zu jedem Bereich kann ein Kommentar gespeichert werden, der die Bedeutung
- des Scans detaillierter beschreiben und sonstige hilfreiche Informationen
- enthalten kann.
-\end_layout
-
-\begin_layout Standard
-Ein Bereich umfasst auch einen vollständigen Satz an Einstellungen für den
- Sicherheits-Scan.
- Wenn ein neuer Bereich erstellt wird, werden zunächst die
-\begin_inset Quotes eld
-\end_inset
-
-Allgemeinen Einstellungen
-\begin_inset Quotes erd
-\end_inset
-
- kopiert.
- Die einzelnen Optionen werden weiter unten genauer beschrieben.
- Für jeden Bereich kann eine Verbindung zu einem Nessus Server aufgebaut
- werden.
- Anschließend kann die Auswahl von Plugins als Teil der Einstellungen durchgefüh
-rt werden.
- Ein Symbol rechts neben dem Titel zeigt die aktive Verbindung zu einem
- Nessus Server an.
- Sinn der Zuordnung eines Servers zu einem Bereich ist, dass jeder Server
- unterschiedliche Plugins anbieten kann.
- Mit dem Aufbau der Verbindung bezieht OpenVAS-Client eine Liste der verfügbaren
- Plugins.
-\end_layout
-
-\begin_layout Standard
-Ein Bereich kann außerdem eine Sammlung von Reports umfassen.
- Jedes Mal, wenn ein Scan erfolgreich durchgeführt wurde, wird ein neuer
- Report angelegt.
- zusätzlich können Reports aus Dateien oder von einem Nessus Server geladen
- werden.
-\end_layout
-
-\begin_layout Standard
-Bitte beachten Sie, dass Änderungen an einem Bereich werden immer und nur
- genau dann gespeichert wenn ein Scan gestartet wird.
- Machen Sie Änderungen beispielsweise an der Plugin-Auswahl und schliessen
- dann OpenVAS-Client ohne einen Scan durchzuführen, so werden die Änderungen
- verworfen.
-\end_layout
-
-\begin_layout Standard
-Mögliche Aktionen bezüglich Bereiche:
-\end_layout
-
-\begin_layout Paragraph
-Ausführen
-\end_layout
-
-\begin_layout Standard
-Die Konfiguration für den Bereich wird gespeichert und ein Sicherheits-Scan
- wird mit den aktuellen Einstellungen durch den verbundenen Nessus Server
- ausgeführt.
-\end_layout
-
-\begin_layout Paragraph
-Neu
-\end_layout
-
-\begin_layout Standard
-Ein neuer Bereich mit dem Titel
-\begin_inset Quotes eld
-\end_inset
-
-unbenannter Bereich
-\begin_inset Quotes erd
-\end_inset
-
- wird als Teil der aktuell ausgewählten Aufgabe angelegt.
- Als Voreinstellung werden die allgemeinen Einstellungen kopiert.
- Beachten Sie hier, dass nur explizit gespeicherte Global Einstellungen
- als Voreinstellungen verwendet werden.
- Änderungen die nur im OpenVAS-Client vorliegen, haben keine Auswirkung
- für einen neuen Bereich.
-\end_layout
-
-\begin_layout Paragraph
-Umbenennen
-\end_layout
-
-\begin_layout Standard
-Der Titel eines Bereichs kann entweder direkt in der Baumstruktur durch
- Anklicken des Titels oder durch Auswahl des entsprechenden Menü-Eintrags
- geändert werden.
-\end_layout
-
-\begin_layout Paragraph
-Löschen
-\end_layout
-
-\begin_layout Standard
-Löschen eines Bereichs bedeutet das Löschen aller zugehörigen Reports! Daher
- erfolgt eine Sicherheitsabfrage vor der eigentlichen Löschung.
-\end_layout
-
-\begin_layout Paragraph
-Verschieben zu Aufgabe
-\end_layout
-
-\begin_layout Standard
-Ein Bereich mit allen zugeordneten Reporten kann von einer Aufgabe zu einer
- anderen verschoben werden.
- Ein Untermenü enthält die Liste aller Aufgaben, hieraus kann das Ziel ausgewähl
-t werden.
-\end_layout
-
-\begin_layout Paragraph
-Öffnen
-\end_layout
-
-\begin_layout Standard
-Ein Bereich kann geladen und der aktuellen Aufgabe zugeordnet werden.
- Mit diesem Schritt werden jedoch nur die Einstellungen für den Bereich
- geladen! Die Reports liegen in eigenen Dateien vor, die separat importiert
- werden können.
- Die Aktionen Öffnen und Speichern (siehe unten) erlauben es, Einstellungen
- für einen bestimmten Bereich an andere weiterzugeben oder selbst Sicherungskopi
-e anzulegen.
-\end_layout
-
-\begin_layout Paragraph
-Speichern als
-\end_layout
-
-\begin_layout Standard
-Der aktuellen Bereich wird in eine Datei gespeichert (in der Struktur von
- nessusrc).
- Es werden nur die Einstellungen des Bereichs gespeichert, nicht die zugehörigen
- Reporte.
-\end_layout
-
-\begin_layout Subsubsection
-Reporte
-\end_layout
-
-\begin_layout Standard
-Ein Report ist das Ergebnis eines Sicherheits-Scans.
- Er enthält die Ergebnisse der ausgeführten Plugins zusammen mit Informationen
- zu Sub-Netz, Zielrechner, Port und Schwere der festgestellten Lücke.
-\end_layout
-
-\begin_layout Standard
-Durch OpenVAS-Client verwaltet kann zusätzlich ein Kommentar angegeben werden.
- Soweit verfügbar werden auch die zum Scan gehörenden Einstellungen gespeichert.
- Diese zusätzlichen Informationen sind nicht Teil der Nessus Report Dateien
- und gehen daher verloren, wenn ein Report exportiert wird! Umgekehrt enthalten
- auch importierte Reports keine Kommentare oder die zum Report gehörenden
- Einstellungen.
-
-\end_layout
-
-\begin_layout Standard
-Mögliche Aktionen bezüglich Reports:
-\end_layout
-
-\begin_layout Paragraph
-Löschen
-\end_layout
-
-\begin_layout Standard
-Löscht den aktuellen Report und zugehörige Kommentare und Einstellungen.
- Es erfolgt eine Sicherheits-Abfrage vor der Löschung.
-\end_layout
-
-\begin_layout Paragraph
-Import
-\end_layout
-
-\begin_layout Standard
-Importiert einen Report aus einer Datei.
- Der Standard für Austauschformate ist NBE (Dateiendung
-\begin_inset Quotes eld
-\end_inset
-
-.nbe
-\begin_inset Quotes erd
-\end_inset
-
-).
- Über den Dateiauswahl-Dialog kann der gewünschte Report ausgewählt werden.
- Konnte der Report nicht importiert werden, so erfolgt eine Fehlermeldung.
- Sonst wird der Report dem aktuellen Bereich hinzugefügt.
- Beachten Sie, dass weder Kommentare noch Einstellungen aus einer NBE-Datei
- importiert werden.
-\end_layout
-
-\begin_layout Paragraph
-Export
-\end_layout
-
-\begin_layout Standard
-Der aktuell ausgewählte Report kann exportiert werden.
- Entweder im Nessus-Austauschformat (NBE) oder in einem Format zur Weiterverarbe
-itung bzw.
- Darstellung der Ergebnisse (XML, HTML, HTML mit Diagrammen, LaTeX, ASCII
- Text und PDF).
- Es wird empfohlen, das NBE-Format zu nutzen, wenn die Daten mit anderen
- ausgetauscht werden sollen und das PDF für einfache Berichte, die keiner
- weiteren Überarbeitung bedürfen.
- Die anderen Formate eignen sich zur Weiterverarbeitung der Ergebnisse bzw.
- zur Übernahme in eigene Dokumente.
-\end_layout
-
-\begin_layout Paragraph
-Drucken
-\end_layout
-
-\begin_layout Standard
-Das Druck-Kommando erzeugt einen PDF-Report und einen auf dem System installiert
-en PDF-Betrachter zu starten.
- Mittels dessen Druckfunktionen kann der Bericht dann gedruckt werden.
- Sollte trotz eines installierten Betrachters kein Programm gestartet werden,
- prüfen Sie bitte, ob sich die Installation in den aktuellen Suchpfaden
- befindet.
-\end_layout
-
-\begin_layout Subsection
-Authentifizierung
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client benötigt eine Verbindung zu einem Nessus Server für die Abfrage
- der Liste verfügbarer Plugins und zum tatsächlichen Lauf eines Sicherheits-Scan
-s.
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client kann viele Verbindungen zu verschiedenen Servern gleichzeitig
- halten.
- Jedem Bereich ist eine eigene Verbindung zu einem Server zugeordnet.
- Zusätzlich kann für die allgemeinen Einstellungen ein Server verbunden
- sein, um die Voreinstellung für Plugin-Auswahl und -Parameter zu bestimmen.
- Beachten Sie hier, dass nur explizit gespeicherte Globale Einstellungen
- als Voreinstellung für neue Bereich verwendet werden.
-
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/authentication-dlg-de.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Der Status der Verbindung zum Server wird durch ein Symbol neben dem Titel
- eines Bereichs oder den allgemeinen Einstellungen in der Baumstruktur dargestel
-lt.
- Nur für Bereiche kann eine Verbindung zu Nessus Servern aufgebaut werden,
- nicht für Aufgaben oder Reports.
-\end_layout
-
-\begin_layout Standard
-Weitere Informationen zum Verbindungsstatus zeigt die Status-Zeile am Fuß
- des Hauptfensters: Hier werden die tatsächlichen Verbindungsdaten angezeigt,
- z.B.
-
-\begin_inset Quotes eld
-\end_inset
-
-Verbindung: username at host.test.example
-\begin_inset Quotes erd
-\end_inset
-
-.
- Ganz unten rechts ist ein Icon zu sehen welches anzeigt ob die bestehnde
- Verbindung verschlüsselt ist oder nicht, ganz so wie es die meisten Web-Browser
- auch anzeigen.
-
-\end_layout
-
-\begin_layout Standard
-Der
-\begin_inset Quotes eld
-\end_inset
-
-Verbinden
-\begin_inset Quotes erd
-\end_inset
-
--Dialog bietet verschiedene Einstellungsmöglichkeiten für den Aufbau einer
- Verbindung zu einem Nessus Server:
-\end_layout
-
-\begin_layout Paragraph
-Host-Name
-\end_layout
-
-\begin_layout Standard
-Der Domain-Name oder die IP-Adresse des Rechners, auf dem der Nessus Server
- läuft.
-\end_layout
-
-\begin_layout Paragraph
-Port
-\end_layout
-
-\begin_layout Standard
-Der Port an dem der Nessus Server auf Verbindungen wartet.
- Ältere Nessus Server benutzten Port 3001, der offizielle Port ist nun 1241.
- Mit dem
-\begin_inset Quotes eld
-\end_inset
-
-Vorgabe
-\begin_inset Quotes erd
-\end_inset
-
--Knopf können Sie diesen immer wieder einfach einstellen.
-\end_layout
-
-\begin_layout Paragraph
-Login
-\end_layout
-
-\begin_layout Standard
-Ihr Nutzername auf dem ausgewählten Host-Rechner.
- Um einen bestimmten Nessus Server benutzen zu können benötigen Sie ein
- Nutzer-Konto für diesen Server.
- Der Administrator des Servers kann ein Konto einrichten.
-\end_layout
-
-\begin_layout Paragraph
-Passwort
-\end_layout
-
-\begin_layout Standard
-Das Passwort für Ihr Nutzer-Konto auf einem Nessus Server.
- Verwenden Sie hier kein Passwort, dass Sie auch für andere Nutzer-Konten
- verwenden.
- Insbesonderen dann nicht, wenn Sie auch unverschlüsselte Verbindungen zu
- einem Nessus Server aufbauen.
-\end_layout
-
-\begin_layout Paragraph
-SSL Optionen
-\end_layout
-
-\begin_layout Subparagraph
-Verwende SSL Verschlüsselung:
-\end_layout
-
-\begin_layout Standard
-Es gibt zwei grundsätzliche Methoden der Authentifizierung: via Login/Passwort
- Kombination oder mittels Zertifikaten (mit oder ohne Passwort).
- In jedem Fall sollten Sie SSL Verschlüsselung aktivieren, damit Passworte
- nicht im Klartext durch das Netzwerk transferiert werden.
- Die Verschlüsselung ist jedoch für Fälle abschaltbar, in denen kein SSL
- verfügbar ist, aber trotzdem mit Nessus gearbeitet werden soll.
-\end_layout
-
-\begin_layout Subparagraph
-Vertrauenswürdige CA:
-\end_layout
-
-\begin_layout Standard
-Das Zertifikat benennt eine Certificate Authority (CA) der Sie vertrauen.
- Mit diesem Zertifikat überprüfen Sie, ob Sie sich mit einem vertrauenswürdigen
- Nessus Server verbinden.
- Die Überprüfung wird für die Paranoia Level 2 und 3 durchgeführt, nicht
- jedoch für den Level 1.
- Der Paranoia Level kann manuell ein der Konfigurationsdatei .nessusrc eingestell
-t werden.
- Wenn Sie zum ersten Mal eine Verbindung zu einem Nessus Server aufbauen
- werden Sie außerdem ausdrücklich nach dem gewünschten Paranoia Level gefragt.
-
-\end_layout
-
-\begin_layout Standard
-Der vorgegebene Pfad für die vertrauenswürdige CA der Dateiname der lokalen
- Nessus Server Installation.
- Wenn Sie also Nessus Klient und Server auf dem gleichen Rechner laufen
- lassen oder beide das gleiche Dateisystem nutzen, so können Sie diese Vorgabe
- einfach benutzen.
-\end_layout
-
-\begin_layout Standard
-Wenn Sie Nessus remote benutzen, so benötigen Sie eine Kopie des CA Zertifikats,
- die Sie an beliebiger Stelle in Ihrem Heimat-Verzeichnis ablegen können.
-\end_layout
-
-\begin_layout Subparagraph
-Authentifizierung durch Zertifikate:
-\end_layout
-
-\begin_layout Standard
-Wenn Sie diese Methode benutzen, benötigen Sie ein für Sie erstelltes Schlüssel/
-Zertifikat Paar.
- Dieses erstellt üblicherweise der Administrator des Nessus Servers mit
- den entsprechenden Skripten.
- Sie erhalten zwei Dateien: Benutzer-Zertifikat und Benutzer-Schlüssel.
- Der Schlüssel kann mit einem Passwort versehen sein, dieses geben Sie dann
- bitte in das entsprechende Textfeld ein.
-\end_layout
-
-\begin_layout Subsection
-Scan Optionen
-\end_layout
-
-\begin_layout Standard
-Dieser Abschnitt erläutert die wichtigsten Konfigurations-Optionen für einen
- Sicherheits-Scan (auf der Karte
-\begin_inset Quotes eld
-\end_inset
-
-Optionen
-\begin_inset Quotes erd
-\end_inset
-
-).
- Speziellere Optionen (z.B.
- Zugriffsregel, von der Wissensbasis gelöste Scans) werden später im Kapitel
- über spezielle Funktionen erläutert
-\end_layout
-
-\begin_layout Subsubsection
-Allgemein
-\end_layout
-
-\begin_layout Standard
-Diese Karte enthält alle allgemeinen Scan-Einstellungen, vergleichen Sie
- dazu auch den Screenshot des Hauptfensters oben.
-\end_layout
-
-\begin_layout Paragraph
-Port-Bereich
-\end_layout
-
-\begin_layout Standard
-Ports die durch Nessus Server gescannt werden sollen.
- Es können entweder ein Port-Bereich angegeben werden, wie z.B.
-
-\begin_inset Quotes eld
-\end_inset
-
-1-8000
-\begin_inset Quotes erd
-\end_inset
-
- oder auch komplexe Mengen wie
-\begin_inset Quotes eld
-\end_inset
-
-21,23,25,1024-2048,6000
-\begin_inset Quotes erd
-\end_inset
-
-.
-\begin_inset Quotes eld
-\end_inset
-
--1
-\begin_inset Quotes erd
-\end_inset
-
- bedeutet keine Port-Scans durchzuführen,
-\begin_inset Quotes eld
-\end_inset
-
-default
-\begin_inset Quotes erd
-\end_inset
-
- bedeutet die der Nessus Dienste Datei angegebenen Ports zu scannen.
-\end_layout
-
-\begin_layout Paragraph
-Nicht gescannte Ports als geschlossen betrachten
-\end_layout
-
-\begin_layout Standard
-Um Zeit zu sparen können Sie dem Nessus Server vorgeben, TCP-Ports die nicht
- gescannt wurden als geschlossen zu betrachten.
- Die Überprüfung des Zielsystems ist damit unvollständig aber die Scan-Zeit
- reduziert sich.
- Außerdem schickt der Nessus Server keine Pakete an Ports die Sie nicht
- vorgegeben haben.
- Wenn diese Option nicht aktiviert ist, betrachtet der Nessus Server Ports
- deren Status unbekannt ist als offen.
-\end_layout
-
-\begin_layout Paragraph
-Anzahl Hosts die zur gleichen Zeit getestet werden sollen
-\end_layout
-
-\begin_layout Standard
-Geben Sie hier die maximale Anzahl an Hosts an, die durch den Server gleichzeiti
-g gescannt werden sollen.
- Beachten Sie, dass der Nessus Server für einen Scan max_hosts x max_tests
- Prozesse startet!
-\end_layout
-
-\begin_layout Paragraph
-Anzahl Tests die zur gleichen Zeit durchgeführt werden sollen
-\end_layout
-
-\begin_layout Standard
-Geben Sie hier die maximale Anzahl an Tests an, die durch den Server gleichzeiti
-g gegen jeden Host gestartet werden.
- Beachten Sie, dass der Nessus Server für einen Scan max_hosts x max_tests
- Prozesse startet!
-\end_layout
-
-\begin_layout Paragraph
-Pfad zu den CGIs
-\end_layout
-
-\begin_layout Standard
-Nessus bietet die Möglichkeit, mehrere Pfade (
-\begin_inset Quotes eld
-\end_inset
-
-/cgi-bin
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-/cgis
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-/home-cgis
-\begin_inset Quotes erd
-\end_inset
-
- usw.) nach CGIs zu durchsuchen.
- Geben Sie die zu durchsuchenden Pfade durch Doppelpunkte getrennt an: Z.B.
-
-\begin_inset Quotes eld
-\end_inset
-
-/cgi-bin:/cgi-aws:/~deraison/cgi
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Paragraph
-Vor Test rückwärtige DNS-Namensauflösung der IP
-\end_layout
-
-\begin_layout Standard
-Ist diese Option eingeschaltet, so wird Nessus Server eine DNS Rückwärts-Suche
- über die IP-Adresse durchführen (DNS reverse lookup) bevor die Tests durchgefüh
-rt werden.
- Dies kann die Durchführung der Tests insgesamt verlangsamen.
-\end_layout
-
-\begin_layout Paragraph
-Test optimieren
-\end_layout
-
-\begin_layout Standard
-Sicherheits-Tests bitten unter Umständen den Nessus Server darum, nur dann
- gestartet zu werden, wenn bestimmte Informationen die durch andere Plugins
- gesammelt wurden, sich in der Wissen-Basis befinden oder nur wenn ein angegeben
-er Port offen ist.
- Diese Option kann die Tests beschleunigen, kann aber dazu führen, dass
- Nessus Server einige Lücken übersieht.
- Wer paranoid ist, schaltet diese Option aus.
-\end_layout
-
-\begin_layout Paragraph
-Sichere Prüfungen
-\end_layout
-
-\begin_layout Standard
-Einige Sicherheits-Tests können dem Ziel-Rechner Schaden zufügen, indem
- Dienste zeitweise oder bis zu einem Neustart dort nicht mehr zur Verfügung
- stehen.
- Wird diese Option eingeschaltet, so wird Nessus Server sich auf gesendete
- Banner verlassen und keine echten Tests durchführen.
- Die Ergebnisse sind dann entsprechend weniger zuverlässig, aber wenigstens
- wird dadurch kein möglicher Ausfall für Benutzer entstehen.
- Unter Sicherheitsaspekten ist es angeraten, diese Option auszuschalten.
- Aus der Sicht eines Administrators sollte sie angeschaltet bleiben.
-\end_layout
-
-\begin_layout Paragraph
-Bestimme Hosts anhand der MAC Adresse
-\end_layout
-
-\begin_layout Standard
-Wird diese Option eingeschaltet, so werden die Ziele im lokalen Netzwerk
- anhand ihrer Ethernet MAC Adresse anstatt der IP-Adresse bestimmt.
- Dies ist insbesondere dann sinnvoll wenn Nessus in einem DHCP-Netzwerk
- verwendet wird.
- Sind Sie sich unsicher, dann schalten Sie die Option ab.
-\end_layout
-
-\begin_layout Paragraph
-Port Scanner
-\end_layout
-
-\begin_layout Standard
-Die Liste verfügbarer Port-Scanner.
- Post-Scanner stellen eine besondere Kategorie von Plugins dar und werden
- daher getrennt von den anderen Plugins dargestellt.
- Die Liste ist nur gefüllt, wenn eine Verbindung zu einem Nessus Server
- hergestellt wurde.
- Sie können einen oder mehrere Scanner auswählen und durch Anklicken mehr
- Details zu einem ausgewählten Scanner abfragen.
-\end_layout
-
-\begin_layout Subsubsection
-Plugins
-\end_layout
-
-\begin_layout Standard
-Plugins werden auf dem Nessus Server gespeichert.
- Deshalb benötigen Sie eine Verbindung zu einem Nessus Server, um einen
- Auswahl zutreffen.
- Ansonsten wird eine leere Liste angezeigt.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-plugins-de.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Plugins werden unterschieden in verschiedene Familien, die als Ganzes durch
- entsprechende Check-Boxen aktiviert oder deaktiviert werden können.
- Auch kann eine Familie aufgeklappt werden, so dass die zugehörigen Plugins
- aufgelistet werden und einzeln über die Check-Boxen aktiviert oder deaktiviert
- werden können um die Auswahl zu verfeinern.
-\end_layout
-
-\begin_layout Standard
-Die Spalte
-\begin_inset Quotes eld
-\end_inset
-
-Warnung
-\begin_inset Quotes erd
-\end_inset
-
- enthält ein Warnungs-Symbol für einige Plugins.
- Dieses Warnungs-Symbol bedeutet, dass das Plugin Dienste auf dem Zielsystem
- abschalten oder das gesamte System abschalten könnte.
- Sie sollten sehr vorsichtig sein, wenn Sie diese Option einschalten, da
- es nötig werden könnte einige Zielsystem manuell neu zu starten.
-\end_layout
-
-\begin_layout Standard
-Unterhalb der Plugin-Liste wird die Gesamtzahl der vom Server geladenen
- Plugins angezeigt.
- Desweiteren auch die Gesamtzahl der ausgewählten Plugins und die Anzahl
- der durch einen Filter dargestellten Plugins.
-\end_layout
-
-\begin_layout Standard
-Die Folgenden Aktionen sind möglich:
-\end_layout
-
-\begin_layout Subparagraph
-Alle einschalten
-\end_layout
-
-\begin_layout Standard
-Schaltet alle Plugin-Kategorien ein.
-\end_layout
-
-\begin_layout Subparagraph
-Alle ausschalten
-\end_layout
-
-\begin_layout Standard
-Schaltet alle Plugin-Kategorien aus.
-\end_layout
-
-\begin_layout Subparagraph
-Alles aufklappen
-\end_layout
-
-\begin_layout Standard
-Klappt die Plugin-Liste soweit auf, dass sämtliche Plugins angezeigt werden.
-\end_layout
-
-\begin_layout Subparagraph
-Alles zusammenklappen
-\end_layout
-
-\begin_layout Standard
-Es werden nur noch die Plugin Familien angezeigt.
-\end_layout
-
-\begin_layout Subparagraph
-Abhängigkeiten zur Laufzeit berücksichtigen
-\end_layout
-
-\begin_layout Standard
-Wird diese Option aktiviert, dann wird Nessus Server alle Plugins einschalten
- die abhängig sind von den bereits selektierten.
-\end_layout
-
-\begin_layout Subparagraph
-Stille Abhängigkeiten
-\end_layout
-
-\begin_layout Standard
-Wird diese Option aktiviert, dann wird Nessus Server keinen Bericht für
- solche Plugins senden, die nicht explizit eingeschaltet waren.
-\end_layout
-
-\begin_layout Subparagraph
-Filter
-\end_layout
-
-\begin_layout Standard
-Der Filter-Dialog erlaubt die Auswahl von Plugins anhand bestimmter Muster.
-
-\series bold
-Beachten Sie
-\series default
-, dass Sie die vorherige Plugin-Auswahl komplett löschen sobald Sie einen
- Filter aktivieren.
-\end_layout
-
-\begin_layout Paragraph
-Plugin Info-Dialog
-\end_layout
-
-\begin_layout Standard
-Wenn Sie auf einen Plugin-Titel einen Doppel-Click ausführen öffnet sich
- ein Dialog, der weitere Informationen zum Plugin bietet.
- Die angezeigten Informationen sind im Plugin abgelegt.
-\end_layout
-
-\begin_layout Standard
-Folgende Aktionen sind im Info-Dialog möglich:
-\end_layout
-
-\begin_layout Subparagraph
-Setze Plugin Timeout
-\end_layout
-
-\begin_layout Standard
-Sie können eine Timeout für das Plugin angeben.
-\end_layout
-
-\begin_layout Subparagraph
-Zeige Abhängigkeiten
-\end_layout
-
-\begin_layout Standard
-Ein weiterer Info-Dialog listet die Abhängigkeiten des Plugins.
- Hier wird auch der Status (eingeschaltet/ausgeschaltet) der Plugins angegeben
- von denen das aktuelle Plugin abhängt.
-\end_layout
-
-\begin_layout Subsubsection
-Zugangsdaten
-\end_layout
-
-\begin_layout Standard
-Einige der Plugins bieten die Eingabe von Zugangsdaten für bestimmte Anwendungen
- wie z.B.
- Samba oder für Web-Sites (HTTP).
- Diese Plugins funktionieren völlig analog zu den Plugins die unter
-\begin_inset Quotes eld
-\end_inset
-
-Voreinstellungen
-\begin_inset Quotes erd
-\end_inset
-
- eine Parametereingabe erlauben.
- Für eine bessere Übersicht ist die entsprechende Gruppe aber unter
-\begin_inset Quotes eld
-\end_inset
-
-Zugangsdaten
-\begin_inset Quotes erd
-\end_inset
-
- getrennt aufgeführt.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-credentials-de.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Plugin Voreinstellungen
-\end_layout
-
-\begin_layout Standard
-Einige Plugins können anhand von Parametern angepasst werden.
- Die Parameter aller konfigurierbaren Plugins werden auf dieser Karte zusammenge
-fasst und können modifiziert werden.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-pluginprefs-de.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Nur eine vergleichsweise kleine Zahl von Plugins bietet die Möglichkeit
- einer Konfiguration.
-\end_layout
-
-\begin_layout Subsubsection
-Zielauswahl
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-targetselection-de.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Paragraph
-Ziel(e)
-\end_layout
-
-\begin_layout Standard
-Die ersten Hosts, die durch den Nessus Server attackiert werden.
- Die anderen Optionen erlauben es, den Kreis der zu testenden Systeme zu
- erweitern.
- Es können diverse Primär-Ziele angegeben werden, indem sie mit Komma (,)
- separiert werden, z.B.:
-\begin_inset Quotes eld
-\end_inset
-
-host1,host2
-\begin_inset Quotes erd
-\end_inset
-
-.
-
-\end_layout
-
-\begin_layout Standard
-Eine besondere Syntax ist
-\begin_inset Quotes eld
-\end_inset
-
-file:/some/where/targetlist.txt
-\begin_inset Quotes erd
-\end_inset
-
-: Die Liste der Ziele wird aus einer Datei gelesen.
- Diese kann auch mittels des Knopfs
-\begin_inset Quotes eld
-\end_inset
-
-Lese aus Datei
-\begin_inset Quotes erd
-\end_inset
-
- komfortabel ausgewählt werden, im entsprechenden Abschnitt des Handbuchs
- ist auch das Format der Datei beschrieben.
-\end_layout
-
-\begin_layout Paragraph
-Lese aus Datei
-\end_layout
-
-\begin_layout Standard
-Es kann über den Dateiauswahl-Dialog eine Textdatei angegeben werden welche
- eine Liste der Ziele enthält.
- Diese Textdatei kann eine oder mehrere Zeilen mit Komma-separierten Listen
- von Hosts enthalten.
-\end_layout
-
-\begin_layout Paragraph
-Führe einen DNS Zonentransfer durch
-\end_layout
-
-\begin_layout Standard
-Nessus Server wird AXFR Anfragen (Zonen-Transfer) an den Name-Server des
- Ziels richten und so eine Liste der Hosts der Ziel-Domäne ermitteln.
- Dann wird jeder einzelne Host getestet.
-\end_layout
-
-\begin_layout Subsection
-Reports
-\end_layout
-
-\begin_layout Subsubsection
-Report Seite von OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-Die Report Seite enthält 3 Elemente: Auf der linken Seite befindet sich
- eine Baumstruktur welches es erlaubt über Host, Port und Schweregrad einzelne
- Scan-Ergebnissen zu finden.
- Oberhalb dieser Baumstruktur ist eine Auswahl mit der man Baumstruktur
- umstellen kann.
- Auf der rechten Seite befindes sich das Textfeld mit den eigentlichen Scan-Erge
-bnissen.
- Das gesamte Design unterstützt ein exploratives Verstehen der Scan-Ergebnisse.
-
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-report-de.png
- width 90text%
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Report Formate
-\end_layout
-
-\begin_layout Standard
-Die Scan-Ergebnisse können in verschiedene Formate exportiert werden.
- Grundsätzlich kann zwischen drei Formaten unterschieden werden: Austauschformat
-e, bearbeitbare Dokumente und Read-only Dokumente.
- Der letzte Typ ist aktuell der PDF Report.
- Mit einem geeigneten Betrachter können Sie im Dokument anhand der eingebetteten
- Hyperlinks navigieren.
-\end_layout
-
-\begin_layout Standard
-Weitere Informationen zu den Formaten finden Sie im Abschnitt über die Aktion
-
-\begin_inset Quotes eld
-\end_inset
-
-Report->Export
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Section
-Besondere Funktionen
-\end_layout
-
-\begin_layout Subsection
-OpenVAS-Client Voreinstellungen
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client erlaubt es, einige individuelle Vorlieben einzustellen, die
- das Verhalten der graphischen Benutzeroberfläche bestimmen.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/preferences-dlg-de.png
- scale 90
- keepAspectRatio
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Folgende Einstellungen sind verfügbar:
-\end_layout
-
-\begin_layout Subsubsection
-Benutzerschnittstelle
-\end_layout
-
-\begin_layout Paragraph
-Automatisches Aufklappen der Baumelemente
-\end_layout
-
-\begin_layout Standard
-In der linksseitigen Baumansicht werden die Teilbäume für Aufgaben oder
- Bereiche jeweils automatisch aufgeklappt, wenn man sie anwählt und diese
- Voreinstellung eingeschaltet ist.
-\end_layout
-
-\begin_layout Standard
-Ist die Option nicht ausgewählt, so wird ein Teilbaum erst dann aufgeklappt,
- wenn man direkt auf das entsprechende Symbol klick.
-\end_layout
-
-\begin_layout Subsubsection
-Verbindung mit Nessus Server
-\end_layout
-
-\begin_layout Paragraph
-Automatisch verbinden
-\end_layout
-
-\begin_layout Standard
-Ist diese Option eingeschaltet, wird OpenVAS-Client versuchen eine Verbindung
- zum Server aufzubauen sobald ein Bereich ausgeführt werden soll.
- Bei Verwendung von Benutzer-Zertifikaten ohne Passwort funktioniert das
- unmittelbar.
- Für Passwort-geschützte Benutzer-Zertifikate oder einfache Passwort-basierte
- Anmeldung wird das Passwort im Speicher gehalten bis OpenVAS-Client beendet
- wird.
-\end_layout
-
-\begin_layout Subsubsection
-Plugin Zwischenspeicher
-\end_layout
-
-\begin_layout Paragraph
-Plugin Informationen bei Verbindungsaufbau zwischenspeichern
-\end_layout
-
-\begin_layout Standard
-Ist dieses Option eingeschaltet, legt OpenVAS-Client für den entsprechenden
- Bereich einen Zwischenspeicher für die kompletten Plugin Informationen
- an.
- Das wirkt sich auf dreierlei Weise aus:
-\end_layout
-
-\begin_layout Standard
-Erstens kann der erneute Verbindungsaufbau zum Nessus Server bedeutent schneller
- sein, da MD5 Prüfsummen verwendet werden um nur veränderte und neue Plugins
- zu identifizieren.
- Nur diese Änderungen werden dann heruntergeladen.
- Verbdindet man sich auf einen anderen Nessus Server werden in der Regel
- alle Plugins wieder neu heruntergeladen.
-\end_layout
-
-\begin_layout Standard
-Zweitens sind sämtliche Plugin Informationen auch dann in OpenVAS-Client
- verfügbar wenn man noch keine Verbindung zum Nessus Server aufgebaut hat.
- Man kann also ohne Server-Verbindung die Pluginauswahl und die Plugin Voreinste
-llungen anschauen oder ändern.
- Beachten Sie, dass sich die Pluginauswahl ggf.
- beim Verbingsaufbau ändern kann, beispielsweise wenn neue Plugins hinzugekommen
- sind oder welche gelöscht werden.
- Letzeres passsiert in der Regel jedoch nie.
- Den Zwischenspeicher zu laden kann unter Umständen ein paar Sekunden dauern.
- Wollen Sie das vermeiden, dann schalten Sie die Option
-\begin_inset Quotes eld
-\end_inset
-
-Lade umgehend Plugin Zwischenspeicher für Bereiche
-\begin_inset Quotes erd
-\end_inset
-
- aus.
-\end_layout
-
-\begin_layout Standard
-Drittens der Nachteil eines Zwischenspeichers: Es werden pro Bereich einige
- MByte an Platz benötigt.
- Stellt dies ein Problem dar, sollten sie diese Option abschalten.
- Wollen Sie bereits erzeugte Zwischenspeicher wieder entfernen, so suchen
- Sie nach den Dateien
-\begin_inset Quotes eld
-\end_inset
-
-nessus_plugin_cache
-\begin_inset Quotes erd
-\end_inset
-
- in Ihrem Nessus Verzeichnis
-\begin_inset Quotes eld
-\end_inset
-
-~/.nessus
-\begin_inset Quotes erd
-\end_inset
-
-.
- Einfaches löschen dieser Dateien reicht aus.
-\end_layout
-
-\begin_layout Paragraph
-Verwende Plugin Zwischenspeicher für Reports
-\end_layout
-
-\begin_layout Standard
-Schaltet man diese Option ein, so wird OpenVAS-Client sämtliche Plugin Informati
-onen allen neuen Scan-Reports beilegen.
- Das erlaubt Ihnen die Pluginauswahl und die Plugin Voreinstellungen für
- einen Report in der grafischen Benutzeroberfläche anzuschauen.
- Dieser Zwischenspeicher dient also der Verbesserung der Transparenz, nicht
- der Performanz.
-\end_layout
-
-\begin_layout Standard
-Auch hier gibt es den Nachteil, dass pro Report mehrere MByte an Platz benötigt
- werden.
- Stellt dies ein Problem dar, sollten sie diese Option abschalten.
- Wollen Sie bereits erzeugte Zwischenspeicher wieder entfernen, so suchen
- Sie nach den Dateien
-\begin_inset Quotes eld
-\end_inset
-
-nessus_plugin_cache
-\begin_inset Quotes erd
-\end_inset
-
- in Ihrem Nessus Verzeichnis
-\begin_inset Quotes eld
-\end_inset
-
-~/.nessus
-\begin_inset Quotes erd
-\end_inset
-
-.
- Einfaches löschen dieser Dateien reicht aus.
-\end_layout
-
-\begin_layout Paragraph
-Lade umgehend Plugin Zwischenspeicher für Bereiche
-\end_layout
-
-\begin_layout Standard
-Schaltet man diese Option ab, so wird OpenVAS-Client den Zwischenspeicher
- für einen Bereich nicht automatisch laden wenn man einen Bereich anwählt.
- Das bedeutet, dass man weder die Pluginauswahl noch die Plugin Einstellungen
- zu sehen bekommt wenn man nicht mit dem Nessus Server verbunden ist.
- Diese Option schaltet also den zweiten Punkte von
-\begin_inset Quotes eld
-\end_inset
-
-Plugin Informationen bei Verbindungsaufbau zwischenspeichern
-\begin_inset Quotes erd
-\end_inset
-
- wieder ab um möglicherweise störende längere Ladezeiten des Zwischenspeichers
- zu vermeiden wenn man einen Bereich anwählt.
-\end_layout
-
-\begin_layout Subsubsection
-Report
-\end_layout
-
-\begin_layout Paragraph
-Füge Plugin Details in PDF-Bericht ein
-\end_layout
-
-\begin_layout Standard
-Schaltet man diese Option ein, so wird OpenVAS-Client bei der Erstellung
- von PDF-Reports einen Anhang mit Details zu solchen Plugins anfügen die
- relevante Ergebnisse des Berichts erzeugt haben.
- Diese Details sind innerhalb des PDF-Dokumentes verknüpft, so dass man
- leicht zu den gewünschten Informationen springen kann.
-\end_layout
-
-\begin_layout Standard
-Bedenken Sie aber, dass das PDF-Dokument dadurch unter Umständen signifikant
- an Umfang gewinnen kann.
- Im Durchschnitt können Sie davon ausgehen, dass etwa zwei Plugin-Beschreibungen
- auf einer Seite stehen.
-\end_layout
-
-\begin_layout Subsubsection
-Externe Verweise in HTML/PDF
-\end_layout
-
-\begin_layout Standard
-Diese Einstellungen bestimmen die URL für die Verweise auf weitere Informationen
- zu Nessus Plugins, CVE/CAN und BugTraq ID in Reports der Formate HTML und
- PDF.
- Die Voreinstellungen wie oben im Screenshot zu sehen werden empfohlen,
- da dort jeweils aktuelle Informationen vorhanden sind.
- Die Voreinstellungen erhält man zurück wenn man die entsprechenden Felder
- leer lässt.
-\end_layout
-
-\begin_layout Standard
-Für den Fall, dass Sie einen Nessus Report als Paket mit z.B.
- den Details zu CVE/CAN erstellen wollen um alles off-line lesenen zu können,
- könnten Sie diese Definition verwenden: ``mitre/%s/%s/%s.html'' falls Sie
- eine Verzeichnisstruktur relativ zur Report-Datei haben mit mitre/CVE/yyyy/nnnn.
-html und mitre/CAN/yyyy/nnnn.html wobei yyyy da Jahr ist und nnnn die Nummer
- des Eintrages.
- Dann können alle Dateien in einem Paket zusammengefasst werden.
-\end_layout
-
-\begin_layout Standard
-Beachten Sie, dass die Zeichnketten die Sie hier definieren, in den Parameter
- ``href'' der HTML-Verweise direkt eingetragen werden.
- Da Werkzeug ``htmldoc'' wird verwendet um PDF Reports daraus herzustellen.
- Abhängig davon, welche Version mit welchen Eigenschaften Sie auf Ihrem
- System haben, kann die Art der erzeugten Verweise in der PDF-Datei variieren.
-\end_layout
-
-\begin_layout Subsection
-Benutzer-definierte Zugriffsregeln
-\end_layout
-
-\begin_layout Subsubsection
-Allgemein
-\end_layout
-
-\begin_layout Standard
-Der Nessus Server verwaltet eine Liste von Zugriffsregeln ähnlich denen
- bei Firewall-Anwendungen.
- Diese Server-seitigen Regeln können durch einen Nessus Klienten niemals
- überschrieben werden.
-\end_layout
-
-\begin_layout Standard
-Des weiteren kann der Administrator des Nessus Server zusätzlich spezielle
- Regeln für einen Benutzer anlegen, beispielsweise direkt bei der Einrichtung
- des Benutzerkontos mit
-\family typewriter
-nessus-adduser
-\family default
-.
-\end_layout
-
-\begin_layout Standard
-Schließlich hat der Benutzer noch die Möglichkeit, zusätzliche eigene Regeln
- in OpenVAS-Client zu setzen.
-\end_layout
-
-\begin_layout Subsubsection
-Syntax
-\end_layout
-
-\begin_layout Standard
-Eine Regel kann zum einen eine Voreinstellungsregel sein:
-\begin_inset Quotes eld
-\end_inset
-
-default deny
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-default reject
-\begin_inset Quotes erd
-\end_inset
-
- oder
-\begin_inset Quotes eld
-\end_inset
-
-default accept
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-Zum anderen kann eine Regel Ziel-spezifisch angegeben werden und besteht
- dann aus einer Aktion (
-\begin_inset Quotes eld
-\end_inset
-
-deny
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-reject
-\begin_inset Quotes erd
-\end_inset
-
- oder
-\begin_inset Quotes eld
-\end_inset
-
-accept
-\begin_inset Quotes erd
-\end_inset
-
-) und dem Ziel spezifiziert durch die IP (z.B.
- 192.168.10.10).
-\end_layout
-
-\begin_layout Standard
-Beachten Sie, dass hier tatsächlich IPs angegeben werden müssen.
- Hostnamen sind aus Sicherheitsgründen nicht gestattet.
-\end_layout
-
-\begin_layout Subsubsection
-Regeln in OpenVAS-Client verwalten
-\end_layout
-
-\begin_layout Standard
-Eine Regel besteht aus einer Aktion und (falls keine voreingestellte Aktion
- definiert wurde) einem Ziel.
- Es sind insgesamt 6 Aktionen möglich aus denen der Benutzer in einer Auswahlbox
- auswählen kann.
- Das Ziel muss separat in einem Texteingabefeld angeben werden.
-\end_layout
-
-\begin_layout Standard
-Sobald man
-\begin_inset Quotes eld
-\end_inset
-
-Regel hinzufügen
-\begin_inset Quotes erd
-\end_inset
-
- anwählt, wird die spezifizierte Regel in der Gruppe
-\begin_inset Quotes eld
-\end_inset
-
-Klient-seitige Regeln
-\begin_inset Quotes erd
-\end_inset
-
- hinzugefügt.
-\end_layout
-
-\begin_layout Standard
-Ist eine Regel in dieser Gruppe selektiert und betätigen Sie
-\begin_inset Quotes eld
-\end_inset
-
-Regel entfernen
-\begin_inset Quotes erd
-\end_inset
-
-, so wird die selektierte Regel aus der Liste gelöscht.
- Selbstverständlich können keine Server-seitigen Regeln gelöscht werden.
-\end_layout
-
-\begin_layout Subsubsection
-Beispiel für eine Benutzer-definierte Zugriffsregel
-\end_layout
-
-\begin_layout Standard
-Sie sind das Sicherheitsteam von BigBank Corp.
- Das Management hat Sie autorisiert, das Netzwerk zu scannen.
- Allerdings unter keinen Umständen 172.20.142.2, da dies der SWIFT Server ist.
- Die Bank würde erheblichen Schaden erleiden, wenn dieser Server offline
- geht.
- Also fügen Sie als Klient-seitige Zugriffsregel hinzu:
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace smallskip
-\end_inset
-
-
-\family typewriter
-deny 172.20.142.2
-\family default
-
-\begin_inset VSpace smallskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-Sie können nun sicher sein, dass diese IP nicht gescannt wird, selbst wenn
- diese IP bei den Zielen explizit auftaucht.
-\end_layout
-
-\begin_layout Subsubsection
-Beispiel für eine Administrator-definierte Zugriffsregel
-\end_layout
-
-\begin_layout Standard
-Indem Sie die Datei nessusd.rules editieren (nur der Administrator des Nessus
- Server kann dies), können Sie sicherstellen, dass der Nessus Server nicht
- verwendet werden kann, um bestimmte Hosts zu scannen.
- Falls Ihr internes Netzwerk 10.0.0.0/8 ist, dann wollen Sie in der Regel sicherste
-llen, dass niemand Rechner außerhalb dieses Netzes mit dem Server scannen
- kann.
- Dies erreichen Sie durch folgende Einstellung in
-\family typewriter
-nessusd.rules
-\family default
-:
-\begin_inset VSpace smallskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-allow 10.0.0.0/8
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-allow 127.0.0.1
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-default deny
-\end_layout
-
-\begin_layout Subsection
-Lokale Sicherheitstests: Theorie
-\end_layout
-
-\begin_layout Subsubsection
-Was sind
-\begin_inset Quotes eld
-\end_inset
-
-lokale
-\begin_inset Quotes erd
-\end_inset
-
- Sicherheitstests?
-\end_layout
-
-\begin_layout Standard
-Beginnend mit Nessus 2.1.0 ist es möglich, Nessus SSH-Beglaubigungen zu übergeben,
- um in ein anderes UNIX-artiges System einzuloggen.
- Dort kann dann lokal festgestellt werden, welche Patches auf dem System
- ggf.
- noch fehlen.
- Konkret bedeutet dies, das Nessus einen validen SSH-Schlüssel erhält, sich
- damit auf den anderen Systemen einloggt, die Liste der installierten Software
- extrahiert und anhand dieser mitteilt, welches Softwarepaket aktualisiert
- werden sollte.
-\end_layout
-
-\begin_layout Standard
-Das eigentliche Ziel dieser Funktionalität ist es, auf einfache Weise zu
- verfolgen, ob alle Patches auf den Systemen eingespielt wurden, ohne dass
- möglicherweise Gefahren für das System entstehen indem man aktiv auf Sicherheit
-slücken von Außen prüft.
- Es ist also wichtig zu verstehen, dass diese Funktionalität keine versteckten
- Probleme wie ein unautorisiertes SUID Programm entdecken kann, sondern
- nur feststellt, welche Patches auf dem System fehlen.
-\end_layout
-
-\begin_layout Subsubsection
-Welche Betriebssysteme werden derzeit unterstützt?
-\end_layout
-
-\begin_layout Standard
-Derzeit ist Nessus in der Lage fehlende Patches für folgende Betriebssysteme
- festzustellen:
-\end_layout
-
-\begin_layout Itemize
-AIX 5.x
-\end_layout
-
-\begin_layout Itemize
-Debian
-\end_layout
-
-\begin_layout Itemize
-Fedora Core 1 und 2
-\end_layout
-
-\begin_layout Itemize
-FreeBSD 4.x, 5.x (inklusive aller Port Sammlungen)
-\end_layout
-
-\begin_layout Itemize
-Gentoo Linux (alle Empfehlungen in 2004)
-\end_layout
-
-\begin_layout Itemize
-Mac OS X (und Mac OS X Server)
-\end_layout
-
-\begin_layout Itemize
-Mandrake Linux (8.0 bis 10.0)
-\end_layout
-
-\begin_layout Itemize
-RedHat Enterprise Linux (2.1 und 3.0)
-\end_layout
-
-\begin_layout Itemize
-Solaris (2.5.1, 2.6, 7, 8 und 9)
-\end_layout
-
-\begin_layout Itemize
-SuSE Linux (7.0 bis 9.1)
-\end_layout
-
-\begin_layout Itemize
-Microsoft Windows NT, 2000, XP, 2003
-\end_layout
-
-\begin_layout Standard
-Wir hoffen, in der Zukunft weitere Systeme (HP-UX, Tru64, etc...) unterstützen
- zu können.
-
-\end_layout
-
-\begin_layout Subsubsection
-Nach welchen Solaris Patches wird geprüft?
-\end_layout
-
-\begin_layout Standard
-Es sind Prüfungen für Solaris 2.5.1, 7, 8 und 9 (für beide Architekturen:
- sparc und i386) implementiert.
- Wir prüfen auf jeden Patch der auf der offiziellen Sun Patch-Seite "Patch
- containing security fixes" aufgelistet wird.
-\end_layout
-
-\begin_layout Subsubsection
-Ist es geplant weitere Systeme zu unterstützen?
-\end_layout
-
-\begin_layout Standard
-Es ist nicht geplant, alle jemals erstellten Betriebssysteme zu unterstützen.
- Allerdings haben wir vor,
-\begin_inset Quotes eld
-\end_inset
-
-Arbeitsgruppen
-\begin_inset Quotes erd
-\end_inset
-
- für bestimmte Betriebssysteme zu schaffen.
- Im Prinzip suchen wir also nach Menschen, die für das von Ihnen bevorzugte
- Betriebssystem verantwortungsbewußt sämtliche notwendigen Prüfungen auf
- Patches implementieren.
- Falls Sie dementsprechend interessiert sind, so melden Sie sich am besten
- beim Nessus Entwickler-Team.
-\end_layout
-
-\begin_layout Subsubsection
-Was sind lokale Sicherheitsprüfungen NICHT?
-\end_layout
-
-\begin_layout Standard
-Nessus selbst prüft nicht die lokalen Sicherheitsregeln ab, wie es beispielsweis
-e TIGER macht (also Verzeichnis mit Schreibrechten für alle, falsche Zugriffsrec
-hte bei sensitiven Konfigurationsdateien, etc).
- Lesen Sie bei SLAD (Security Local Auditing Daemon) nach, wie man umfangreiche
- Vor-Ort-Tests auf einem potenziell kompromittierten System durchführt.
- SLAD kann über Nessus mit den entsprechenden NASL Skripten verwendet werden.
-\end_layout
-
-\begin_layout Subsubsection
-Warum benötigt man lokale Sicherheitstests, ist Nessus nicht gut genug,
- die Sicherheitsprobleme selbst zu entdecken?
-\end_layout
-
-\begin_layout Standard
-Nessus 2.0 ist im Kern ein Netzwerk-basierter Scanner.
- Das bedeutet, dass er sich mit den Zielsystemen verbindet und versucht
- zu beurteilen ob irgendetwas die Dienste negativ beeinflusst.
- Nun hat aber diese Methode, alles über das Netzwerk zu prüfen, auch einige
- Nachteile.
- Insbesondere kann ein 100% Netzwerk-basierter Scanner folgende Dinge nicht
- leisten:
-\end_layout
-
-\begin_layout Itemize
-Klient-seitige Fehler feststellen: Es gibt heutzutage mehr und mehr Klient-seiti
-ge Verletzbarkeiten, die von Fehlern in Mail-Programmen bis zu XML Bibliotheken
- reichen.
- Es ist schlichtweg unmöglich, auf diese Probleme hin mit einem Scanner
- wie Nessus zu prüfen.
- Die einzige Möglichkeit dies zu tun ist über einen passiven Scanner (z.B.
- SLAD oder NeVO) oder eben lokale Sicherheitstests auf Patches.
-\end_layout
-
-\begin_layout Itemize
-Lokale Fehler feststellen: Klar ist, dass die Sicherheit der lokalen Werkzeuge
- nicht über das Netzwerk beurteilt werden kann.
- Indem man aber einen lokalen Sicherheitstest laufen läßt, kann man feststellen
- ob man einen Overflow in einem SUID-Programm ausnutzen kann, um die Rechte
- von root zu erlangen.
-\end_layout
-
-\begin_layout Itemize
-Fehler in abgestellten Diensten feststellen: Hat ein Host einen verletzbaren
- Dienst installiert, aber dieser läuft nicht zur Zeit des Netzwerk-Scans,
- so wird diese Verletzbarkeit nicht entdeckt.
- Hat man einen ungepatchten Dienst mit einem Sicherheitsloch, so ist dies
- ein echtes Sicherheitsproblem, denn die Lücke kann sofort ausgenutzt werden,
- sobald der Dienst in Betrieb genommen wird.
-\end_layout
-
-\begin_layout Standard
-Die traditionellen Netzwerk-basierten Scanner haben also ihre Grenzen, die
- aber mit der neuen Funktionalität überwunden werden können.
-\end_layout
-
-\begin_layout Subsubsection
-Kann Nessus individuell compilierte und installierte Pakete erkennen?
-\end_layout
-
-\begin_layout Standard
-Falls Sie beispielsweise Ihren DNS Server per Hand installieren und anstatt
- des System-seitigen verwenden, so wird Nessus dies nicht erkennen!
-\end_layout
-
-\begin_layout Standard
-Nessus beschränkt sich auf die Patches, die durch den Betriebssystemhersteller
- zur Verfügung gestellt werden.
- Beachten Sie, dass es normalerweise eine gute Idee ist, bei den Paketen
- des Herstellers zu bleiben, da dies eine Aktualisierung des Systems wesentlich
- vereinfacht.
-\end_layout
-
-\begin_layout Standard
-In der Zukunft wird Nessus in der Lage sein, zu prüfen, ob der laufende
- Dienst derselbe ist wie das installierte RPM (oder anderen Paket-Management-Sys
-tems) und wird so die Ausgabe-Informationen noch verbessern.
-\end_layout
-
-\begin_layout Subsubsection
-Warum um lokale Sicherheitstests kümmern, wenn es gar keine lokalen Benutzer
- gibt?
-\end_layout
-
-\begin_layout Standard
-Warum sollte es beispielsweise jemanden kümmern, ob der Web-Server einen
- lokalen Overflow in einem SUID-Programm hat, wenn es keinen lokalen Benutzer
- außer einen selbst gibt?
-\end_layout
-
-\begin_layout Standard
-Als diese Funktionalität diskutiert wurde, haben eine Leute entgegengehalten,
- dass es Ihnen egal ist, da ihre Server einfach nur Web-Server ohne lokale
- Benutzer sind und daher niemand die Verletzbarkeiten ausnutzen kann.
- Die Antwort darauf ist eine einfache Praxis-Regel der Sicherheit:
-\series bold
-Eindämmung
-\series default
-.
- Wenn Ihr Web-Server verletzbar durch einen bestimmten Fehler ist (sei es
- eine fehlerhafte Konfiguration, ein schlecht geschriebenes PHP-Skript oder
- ein 0day in Apache), dann kann ein Angreifer eine Shell auf Ihrem System
- erhalten.
- Nun ist die Frage: Wollen Sie es diesem Angreifer einfach machen, Administrator
--Privilegien zu erhalten und damit die vollständige Kontrolle über das System?
- Oder wollen Sie ihn eindämmen auf die Privilegien des Web-Servers? (Diese
- Privilegien werden zumindest verhindern, dass der Angreifer den Kern verändert,
- gefährliche Kern-Module lädt und ganz allgemein es schwieriger macht überhaupt
- zu entdecken, dass eine Attacke erfolgreich war).
- Also, lokale Sicherheit ist wirklich wichtig, denn sie ist die letzte Verteidig
-ungslinie.
-\end_layout
-
-\begin_layout Subsubsection
-Wie kann das Einschalten der lokalen Sicherheitstests die Scan-Erfahrung
- verbessern?
-\end_layout
-
-\begin_layout Standard
-Abhängig davon, wie Sie sie benutzen, können lokale Sicherheitstests Ihre
- Scan-Erfahrung dramatisch verbessern:
-\end_layout
-
-\begin_layout Itemize
-Durch Reduzierung der falschen Positiven: es ist nicht immer möglich über
- das Netzwerk festzustellen, ob ein Dienst für einen bestimmten Fehler verletzba
-r ist (manchmal ist die einzige Möglichkeit dies zu tun, den Dienst zum
- Absturz zu bringen, was natürlich keine Option für Produktiv-Systeme ist).
- Manchmal aktualisieren Hersteller ein fehlerhaftes Produkt nicht, sondern
- wenden den Patch auf die alte Version an (siehe z.B.
- den Standpunkt von RedHat dazu).
- Dies macht den Netzwerk-basierten Scannern natürlich das Leben etwas schwerer.
-\end_layout
-
-\begin_layout Itemize
-Durch Beschleunigung der Prüfungen: wenn Sie eigentlich nur daran interessiert
- sind zu prüfen ob auf allen Systemen alle Patches eingespielt sind, dann
- wird die Verwendung der lokalen Sicherheitstests die Zeit für die Prüfung
- drastisch reduzieren.
- Es dauert nur 6 Sekunden alle lokalen Fehler zu finden (über einen VPN-Link)
- während es mindestens 1 Minute dauert, das selbe System über das Netzwerk
- zu scannen.
-\end_layout
-
-\begin_layout Itemize
-Durch häufigeres Scannen: Jeder Netzwerk-basierte Sicherheits-Scanner birgt
- die Gefahr, Geräte oder Dienste auf dem Netzwerk abstürzen zu lassen.
- Das gilt für Nessus wie für alle anderen vergleichbaren Systeme.
- Der Grund ist einfach: Ein Scanner versucht sich zu allen Diensten auf
- dem Zielrechner zu verbinden und einige dieser Dienste (und TCP/IP Stacks)
- sind so schlecht geschrieben, dass, wenn man nicht genau die richtigen
- Daten schickt, ein Absturz die Folge ist.
- Egal wie vorsichtig der Scanner ist, es gibt immer die Gefahr spezielle
- Anwendungen zum Absturz zu bringen oder einen belasteten Server mit wenig
- Speicherreserve usw.
- Dies ist im Speziellen der Fall für Embedded-Geräte, die meistens ganz
- ohne Überlegungen zur Sicherheit konstruiert werden.
- Es gibt Hersteller von Scannern die
-\begin_inset Quotes eld
-\end_inset
-
-100% ungefährliche Scans
-\begin_inset Quotes erd
-\end_inset
-
- versprechen, was schlichtweg eine Lüge ist.
- Interagiert ein Scanner mit Netzwerkdiensten, so gibt es immer die Möglichkeit,
- dass diese zum Absturz gebracht werden.
-\newline
-In der Konsequenz wird nur noch einmal
- pro Monat oder einmal pro Quartal gescannt, obwohl neue Sicherheitsprobleme
- jeden Tag hinzukommen bzw.
- entdeckt werden.
-\newline
-Alleine dadurch, dass die lokalen Sicherheitstest eingeschaltet
- werden und die Port-Scanner sowie alle anderen Plugins ausgeschaltet werden,
- wird Nessus Server sich nur noch per SSH auf die Zielrechner einloggen
- und keinen Stress auf dem Netzwerk erzeugen und auch nicht zu schlechten
- Überraschungen führen.
-\end_layout
-
-\begin_layout Standard
-Es ist also egal, ob sie eine kleine oder sehr große Anzahl Systeme haben,
- lokale Sicherheitstests machen Ihnen Ihre Arbeit in jedem Fall einfacher.
-\end_layout
-
-\begin_layout Subsubsection
-Verlangsamt diese Funktionalität den Scan?
-\end_layout
-
-\begin_layout Standard
-Nein.
- Nessus minimiert die Anzahl der SSH Zugriffe auf die Zielrechner und loggt
- sich tatsächlich nur ein einziges mal pro System ein, um die Daten dann
- in die Wissensbasis zu übertragen.
- Schauen Sie sich den Quelltext des Plugins ssh_get_info.nasl für Details
- dazu an.
-\end_layout
-
-\begin_layout Subsubsection
-Was sind die Nachteile dieser Funktionalität?
-\end_layout
-
-\begin_layout Standard
-Derzeit sind die folgenden Einschränkungen bekannt:
-\end_layout
-
-\begin_layout Itemize
-Es wird nur SSHv2 unterstützt.
- Ein Zugriff auf Hosts über das Protokoll SSHv1 ist nicht möglich.
-\end_layout
-
-\begin_layout Itemize
-Sie müssen die Authentifizierungsmethode über öffentliche Schlüssel mit
- SSH verwenden.
- Es ist zwar etwas komplizierter als einfache Passworte, dafür aber um so
- sicherer.
-\end_layout
-
-\begin_layout Itemize
-Diese Dokumentation beschreibt nur OpenSSH.
-\end_layout
-
-\begin_layout Subsection
-Lokale Sicherheitstests: Wie man sie anschaltet
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status collapsed
-
-\begin_layout Standard
-What to do with this text - we can probably not just copy the referenced
- document, so have a URL instead or write a new text?:
-\end_layout
-
-\begin_layout Standard
-\begin_inset Quotes eld
-\end_inset
-
-As a reminder, if you are interested in Windows security checks please read
- this document instead.
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Das Prinzip
-\end_layout
-
-\begin_layout Standard
-Für das Aktivieren von lokalen Sicherheitstests liegt die folgende Idee
- zugrunde:
-\end_layout
-
-\begin_layout Itemize
-Erzeuge ein SSH Schlüsselpaar mit öffentlichem und privatem Schlüssel, die
- dann von Nessus verwendet werden.
-\end_layout
-
-\begin_layout Itemize
-Erzeuge ein Benutzerkonto auf jedem System auf dem die lokalen Sicherheitstests
- durchgeführt werden sollen.
-\end_layout
-
-\begin_layout Itemize
-Kopiere den öffentlichen SSH Schlüssel den Nessus verwendet in das Verzeichnis
- der jeweiligen Benutzer.
-\end_layout
-
-\begin_layout Itemize
-Weise Nessus an, diese SSH Schlüssel zu verwenden um die Scans durchzuführen.
-\end_layout
-
-\begin_layout Standard
-Wie man sieht ist es also eine einfache Methode.
- Nessus verwendet keine direkte Authentifizierung über Passwort, da sonst
- eine Verletzbarkeit über eine man-in-the-middle Attacke gegeben wäre (derzeit
- wollen wir das Schlüsselmanagement für die Zielserver nicht selbst übernehmen)
-\end_layout
-
-\begin_layout Standard
-Wenn Sie sich nicht mit SSH auskennen und nicht verstehen was Schlüsselpaare
- mit öffentlichem und privatem Schlüssel sind, sollten Sie unbedingt zunächst
- entsprechende Dokumentation und Literatur heranziehen.
-\end_layout
-
-\begin_layout Subsubsection
-Einen öffentlichen SSH-Schlüssel erzeugen
-\end_layout
-
-\begin_layout Standard
-Um einen SSH Schlüssel zu erzeugen, verwenden Sie das Kommando ssh-keygen
- und speichern Sie den geheimen Schlüssel an einem sicheren Ort:
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-$ ssh-keygen -t dsa
-\newline
-Generating public/private dsa key pair.
- Enter file in which to save the key (/Users/renaud/.ssh/id_dsa):
-\newline
-/home/renaud/Nes
-sus/ssh_key
-\newline
-Enter passphrase (empty for no passphrase):
-\newline
-Enter same passphrase
- again:
-\newline
-Your identification has been saved in /home/renaud/Nessus/ssh_key.
-\newline
-Your
- public key has been saved in /home/renaud/Nessus/ssh_key.pub.
-\newline
-The key fingerprint
- is: 06:4a:fd:76:ee:0f:d4:e6:4b:74:84:9a:99:e6:12:ea renaud at myth.local
-\newline
-
-\end_layout
-
-\begin_layout Standard
-Wie Sie am Beispiel oben sehen können, wurden zwei Dateien erzeugt:
-\end_layout
-
-\begin_layout Itemize
-/home/renaud/Nessus/ssh_key ist der private SSH Schlüssel.
- Transferieren Sie ihn nie auf ein anderes System als das auf dem der Nessus
- Klient läuft.
-\end_layout
-
-\begin_layout Itemize
-/home/renaud/Nessus/ssh_key.pub ist der öffentliche SSH Schlüssel.
- Diese Datei wird auf jedes System kopiert für welches lokale Sicherheitstests
- mit Nessus gemacht werden sollen.
-\end_layout
-
-\begin_layout Standard
-Wenn Sie bei ssh-keygen nach einem Passwort gefragt werden, dann können
- Sie auch zweimal mit Return bestätigen (also kein Passwort spezifizieren).
- Natürlich ist es besser einen Schlüssel mit einem Passwort zu schützen.
- Aber in diesem Fall ist es so, dass keine zusätzliche Sicherheit gewonnen
- wird, da das Passwort zwischen Nessus Klient und Nessus Server zirkuliert
- und zudem in der Datei .nessusrc im Klartext gespeichert wird.
-\end_layout
-
-\begin_layout Subsubsection
-Ein Benutzerkonto einrichten und einen SSH Schlüssel herstellen
-\end_layout
-
-\begin_layout Standard
-\align left
-Für jede Plattform die Sie testen wollen, sollten Sie ein neues Benutzerkonto
- einrichten ,welches nur für die Verwendung durch Nessus vorgesehen ist.
- In diesem Dokument verwenden wir den Namen nessus, das Benutzerkonto könnte
- aber auch jeden anderen Namen haben.
- Nachdem das Benutzerkonto eingerichtet wurde (mit dem Kommando adduser
- oder einem entsprechenden Werkzeug welches Ihr System bereitstellt), sollten
- Sie sicherstellen, dass dieser neue Benutzer kein gültiges Passwort hat
- (also einen Stern (*) an der entsprechenden Stelle in der Passwort-Datei):
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-# vipw
-\newline
-(...)
-\newline
-nessus:*:502:502::0:0:Nessus Test Account:/home/nessus:/bin/bash
-
-\newline
-(...)
-\family default
-\size default
-
-\newline
-
-\end_layout
-
-\begin_layout Standard
-Da der Benutzer nun eingerichtet ist, müssen Sie nur noch den Schlüssel
- in dessen Heimatverzeichnis kopieren und die Zugriffsrechte für das Verzeichnis
-
-\begin_inset Quotes eld
-\end_inset
-
-.ssh
-\begin_inset Quotes erd
-\end_inset
-
- korrekt setzen:
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-# mkdir ~nessus/.ssh
-\newline
-# mv ssh_key.pub ~nessus/.ssh/authorized_keys
-\newline
-# chown
- -R nessus:nessus ~nessus/.ssh/
-\newline
-# chmod 0600 ~nessus/.ssh/authorized_keys
-
-\newline
-# chmod 0700 ~nessus/.ssh/
-\family default
-\size default
-
-\newline
-
-\end_layout
-
-\begin_layout Subsubsection
-Nessus aufsetzen
-\end_layout
-
-\begin_layout Standard
-Stellen Sie zunächst sicher, dass Sie einen Nessus Server in Version 2.1.0
- oder neuer haben, der mit SSL Unterstützung compiliert ist.
- Sie können dies prüfen mit
-\begin_inset Quotes eld
-\end_inset
-
-nessusd -d
-\begin_inset Quotes erd
-\end_inset
-
-:
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-[root at myth Home]$ nessusd -d
-\newline
-This is Nessus 2.1.0 for Darwin 7.4.0
-\newline
-compiled
- with gcc version 3.3 20030304 (Apple Computer, Inc.
- build 1495)
-\newline
-Current setup :
-\newline
-nasl: 2.1.0
-\newline
-libnessus: 2.1.0 SSL support: enabled
-\newline
-
-\end_layout
-
-\begin_layout Standard
-Starten Sie nun OpenVAS-Client und gehen Sie zur Seite mit den Zugangsdaten
- und setzen Sie den SSH Benutzernamen und den SSH Schlüssel:
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status collapsed
-
-\begin_layout Standard
-TODO: screenshot like on http://www.nessus.org/doc/nessus_ssh_local.html
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Stellen Sie dabei sicher, dass Sie nicht den öffentlichen Schlüssel (.pub)
- und den privaten vertauschen.
- Stellen Sie außerdem sicher, dass die Option
-\begin_inset Quotes eld
-\end_inset
-
-Abhängigkeiten zur Laufzeit berücksichtigen
-\begin_inset Quotes erd
-\end_inset
-
- eingeschaltet ist und starten Sie dann den Scan gegen den Host.
- Der Nessus Report sollte nun mitteilen, dass das Einloggen erfolgreich
- war und alle fehlenden Patches für dieses System auflisten:
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status collapsed
-
-\begin_layout Standard
-TODO: Report excerpt like on http://www.nessus.org/doc/nessus_ssh_local.html
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Wiederholen Sie diese Prozedur für jeden Rechner, für den Sie eine lokale
- Prüfung machen wollen.
-\end_layout
-
-\begin_layout Subsubsection
-Danksagung
-\end_layout
-
-\begin_layout Standard
-Die Funktionalität der SSH-basierten lokalen Tests wurde beigesteuert durch:
-\end_layout
-
-\begin_layout Itemize
-Nicolas Pouvesle, der einen leichten SSH Klienten in NASL entwickelt hat.
-\end_layout
-
-\begin_layout Itemize
-Tenable Network Security, welche über 1200 Plugins für lokale Sicherheitstests
- hergestellt haben.
-\end_layout
-
-\begin_layout Section
-Optimierung und Feinabstimmung
-\end_layout
-
-\begin_layout Subsection
-Wissensbasis
-\end_layout
-
-\begin_layout Standard
-Die Speicherung in der Wissensbasis erlaubt es, die Benutzer des Netzwerkes
- weniger zu stören indem tägliche Scans eines /24 Netzwerkes durchgeführt
- werden, ohne dass dabei die Testresultate jedes mal wieder verworfen werden.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-kb-de.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Sowohl der Nessus Server, als auch der Nessus Klient, haben eine Compilier-Optio
-n, um die Unterstützung durch eine Wissensbasis prinzipiell zu integrieren.
- Dies ist auch voreingestellt, aber man kann auf Nessus Server treffen,
- die die Wissensbasis nicht unterstützen.
-
-\end_layout
-
-\begin_layout Standard
-Im OpenVAS-Client finden Sie die Konfiguration für die Wissensbasis auf
- der Seite
-\begin_inset Quotes eld
-\end_inset
-
-WB
-\begin_inset Quotes erd
-\end_inset
-
- der Optionen (falls dieser Klient entsprechend compiliert wurde).
-\end_layout
-
-\begin_layout Subsubsection
-Einführung
-\end_layout
-
-\begin_layout Standard
-Die Wissensbasis (WB) ist die Liste der Informationen, die für einen getesteten
- Host zusammengetragen wurden.
- Diese beinhaltet die Liste der geöffneten Ports, den Typ des Betriebssystems
- und eine Reihe weiterer Informationen.
- Die Hauptintention ist die Reduzierung der Redundanz bei Tests, so dass
- ein Plugin A, welches ein Fakt findet (z.B.
- einen Weg wie man in den FTP-Server einloggt) diese Information mit anderen
- Plugins teilen kann (beispielsweise wird ein Plugin, welches für seinen
- Test in einen FTP-Server einloggen muss, in der WB nachschauen, ob es einen
- Weg gibt).
- Nach einem Test wird die WB aus dem Speicher entfernt und beim nächsten
- Test von Grund auf neu zusammengetragen.
-\end_layout
-
-\begin_layout Standard
-Die Idee hinter der Speicherung der Wissensbasis ist es, die Ergebnisse
- erneut auch für andere Audits zu verwenden, um damit die Bandbreite zu
- schonen.
- Hat man beispielsweise die Konfiguration seines Web-Servers in den letzten
- 5 Stunden nicht verändert, dann ist es recht unwahrscheinlich, dass dort
- ein neuer Port geöffnet wurde, der bei einem erneuten Scan berücksichtigt
- werden sollte.
- Die Speicherung der Wissensbasis erlaubt:
-\end_layout
-
-\begin_layout Itemize
-Schonung der Bandbreite
-\end_layout
-
-\begin_layout Itemize
-Zeitersparnis
-\end_layout
-
-\begin_layout Itemize
-Test der Hosts nur auf neue Verletzlichkeiten
-\end_layout
-
-\begin_layout Standard
-Man kann eine Lebenszeit für die Wissensbasis für jeden Host definieren.
- Diese Lebenszeit kann frei gewählt werden und zwischen einigen Sekunden
- und ein paar hundert Jahren liegen.
- Dieser Abschnitt erklärt wie man die Wissensbasis verwendet um einen Sicherheit
-szugewinn durch tägliche Scans ganzer Netze zu erreichen.
-\end_layout
-
-\begin_layout Subsubsection
-Verwendung der WB Speicherung
-\end_layout
-
-\begin_layout Standard
-Wollen Sie die Wissensbasis Server-seitig speichern lassen, so müssen Sie
- die Option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-WB Speicherung einschalten
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- im Klienten einschalten:
-\end_layout
-
-\begin_layout Standard
-Diese Option aktiviert die Speicherung der Wissensbasis.
- Auf dem Nessus Server werden alle entsprechenden Informationen gesammelt
- und gespeichert.
- Falls diese Option ausschließlich eingeschaltet ist, so werden die Daten
- lediglich gespeichert, aber eben nicht weiter verwendet.
- Das bedeutet, dass der Nessus Server diese Daten nicht nutzen wird, wenn
- er denselben Host erneut testet.
-\end_layout
-
-\begin_layout Standard
-Technisch gesehen wird jede Wissensbasis als separate Datei für jeden Host
- auf dem Nessus Server gespeichert.
- In Zukunft ist die Verwendung einer Datenbank denkbar.
- Die Dateien liegen unter
-\begin_inset Quotes eld
-\end_inset
-
-/usr/local/var/nessus/username/kbs/
-\begin_inset Quotes erd
-\end_inset
-
-, wobei username das Benutzerkonto ist unter welchem man entsprechend gearbeitet
- hat.
-\end_layout
-
-\begin_layout Subsubsection
-Reduzierung der getesteten Hosts in der Wissensbasis
-\end_layout
-
-\begin_layout Standard
-Falls
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-WB Speicherung einschalten
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- gesetzt ist, dann ist es auch möglich, die Menge der getesteten Hosts die
- dort abgelegt werden für den jeweiligen Benutzer einzuschränken.
- Unter Umständen wollen Sie nur diejenigen Hosts testen, die bereits in
- der Wissensbasis vorliegen.
- Andersherum wollen Sie ggf.
- nur die Hosts testen, für die keine oder eine veraltete Wissensbasis vorliegt,
- Sie damit also den Satz der Wissensbasis komplett und aktuell machen.
- Die drei Optionen
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Alle Hosts testen
-\series default
-",
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Nur die Hosts testen welche bisher getestet wurden
-\series default
-" und
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Nur die Hosts verwenden die bisher nicht getestet wurden
-\series default
-" erlauben die entsprechenden Einstellungen.
-\end_layout
-
-\begin_layout Itemize
-Falls
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Alle Hosts testen
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- eingestellt ist, dann werden sämtliche Hosts, die bei
-\begin_inset Quotes eld
-\end_inset
-
-Ziele
-\begin_inset Quotes erd
-\end_inset
-
- stehen, getestet.
- Es wird also keine Filterung gemacht und ein Test wie gewohnt durchgeführt.
-\end_layout
-
-\begin_layout Itemize
-Wenn Sie die Option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Nur die Hosts testen welche bisher getestet wurden
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- auswählen, dann werden nur diejenigen Hosts getestet, für die eine aktuelle
- Wissensbasis vorliegt.
- Dies erlaubt es, beispielsweise darin sicher zu gehen, dass kein Port-Scan
- gegen einen Host durchgeführt wird der noch nicht getestet wurde aber in
- der Ziel-Liste steht.
-\end_layout
-
-\begin_layout Itemize
-Schließlich, falls die Option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Nur die Hosts verwenden die bisher nicht getestet wurden
-\begin_inset Quotes erd
-\end_inset
-
-
-\series default
- gesetzt ist, werden nur diejenigen Hosts getestet, für die keine Wissensbasis
- vorliegt oder der Wissensbasis veraltet ist.
- Diese Option sorgt also für eine frische Wissensbasis für ensprechende
- Hosts.
-\end_layout
-
-\begin_layout Standard
-Die drei Optionen erlauben folgendes:
-\end_layout
-
-\begin_layout Itemize
-Alles testen
-\end_layout
-
-\begin_layout Itemize
-Sicherstellen, dass kein störendes Rauschen während der Tests entsteht
-\end_layout
-
-\begin_layout Itemize
-Die Wissensbasis zusammenzustellen
-\end_layout
-
-\begin_layout Subsubsection
-Wiederverwendung der Wissensbasis für Mehrfachtests
-\end_layout
-
-\begin_layout Standard
-Die Wiederverwendung der Wissensbasis, die in der Vergangenheit gespeichert
- wurde, kann auch gefahrvoll sein, beispielsweise wenn ein gestern getestetes
- System über Nacht kompromittiert und mit einem Root-Kit versehen wurde
- und der Eindringling eine Root-Shell auf einem Port stehen läßt der vorher
- geschlossen war.
- Wenn Sie die Wissensbasis wiederverwenden so werden Sie diesen Fall nicht
- mitbekommen.
- Auf der anderen Seite will man auf einem gut abgesicherten Netzwerk die
- Wissensbasis wiederverwenden, um Zeit zu sparen, wenn man einen Satz neuer
- Tests gegen einen Host fahren lassen möchte.
-\end_layout
-
-\begin_layout Standard
-Wenn Sie die Option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Verwende die Wissensbasis für die Hosts beim Test
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- aktivieren, dann werden die vorherigen Wissensbasen in den Speicher geladen
- und Nessus Server wird sie aktiv verwenden.
- Sie können mit den folgenden vier Optionen kontrollieren, was der Nessus
- Server genau machen soll:
-\end_layout
-
-\begin_layout Standard
-Ist
-\begin_inset Quotes eld
-\end_inset
-
-Keine Scanner starten die schon einmal gestartet wurden
-\begin_inset Quotes erd
-\end_inset
-
- gesetzt, dann werden die Scanner die bereits vorher einmal verwendet wurden
- nicht erneut verwendet.
- Analog funktionieren die drei anderen Optionen.
- Falls Sie nur die neuen Tests laufen lassen wollen die Sie über das Kommando
-
-\begin_inset Quotes eld
-\end_inset
-
-nessus-update-plugins
-\begin_inset Quotes erd
-\end_inset
-
- erhalten haben, so dann sollten Sie alle vier Optionen einschalten.
-
-\end_layout
-
-\begin_layout Subsubsection
-Bedeutung von aktuell
-\end_layout
-
-\begin_layout Standard
-In diesem Abschnitt wurde davon gesprochen, dass die Wissensbasis aktuell
- sein kann oder veraltet.
- Die Bedeutung dafür ist frei konfigurierbar.
- Jedes mal, wenn eine Wissensbasis erstellt wird, so wird ein Zeitstempel
- mitgespeichert.
- Die Option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Max.
- Alter der gespeicherten Wissensbasis (in Sek.)
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- definiert die Zeit nach der eine Wissensbasis als obsolet angesehen wird
- und durch eine aktuellere überschrieben wird.
-\end_layout
-
-\begin_layout Standard
-Die Voreinstellung ist 864000 (10 Tage), aber Sie sind frei dies beispielsweise
- auf 3600 (eine Stunde) zu senken bzw.
- auf jeden beliebigen anderen Wert zu setzen.
-\end_layout
-
-\end_body
-\end_document
Deleted: trunk/openvas-compendium/users-manual.lyx
===================================================================
--- trunk/openvas-compendium/users-manual.lyx 2008-08-01 18:08:03 UTC (rev 1093)
+++ trunk/openvas-compendium/users-manual.lyx 2008-08-01 18:23:10 UTC (rev 1094)
@@ -1,3594 +0,0 @@
-#LyX 1.5.3 created this file. For more info see http://www.lyx.org/
-\lyxformat 276
-\begin_document
-\begin_header
-\textclass article
-\begin_preamble
-\usepackage{times}[12pt]
-\end_preamble
-\language english
-\inputencoding auto
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-\graphics default
-\paperfontsize default
-\spacing single
-\papersize default
-\use_geometry false
-\use_amsmath 1
-\use_esint 0
-\cite_engine basic
-\use_bibtopic false
-\paperorientation portrait
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\defskip medskip
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\author ""
-\author ""
-\end_header
-
-\begin_body
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size largest
-OpenVAS-Client User's Manual
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename OpenVAS-logo.png
- keepAspectRatio
- clip
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size large
-$Date: 2006-05-19 09:58:15 $
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size large
-Renaud Deraison
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace bigskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align center
-
-\series bold
-\size large
-Jan-Oliver Wagner
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace vfill
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset LatexCommand tableofcontents
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section*
-About This Document
-\end_layout
-
-\begin_layout Standard
-This document describe how to use a OpenVAS or Nessus Server via the GTK+
- GUI
-\begin_inset Quotes eld
-\end_inset
-
-OpenVAS-Client
-\begin_inset Quotes erd
-\end_inset
-
-.
- This may not cover the whole functionality of the OpenVAS or Nessus Server
- nor does it claim to be complete.
-\end_layout
-
-\begin_layout Standard
-Please note that a name change from NessusClient to OpenVAS-Client happened
- early July 2007.
- NessusClient 1.x continues as OpenVAS-Client while the new NessusClient
- 3.x release is a entirely new development based on QT instead of GTK+ and
- is not a Free Software product.
-\end_layout
-
-\begin_layout Standard
-
-\emph on
-Due to the name change the manual might be inconsistent in some places!
-\end_layout
-
-\begin_layout Section
-General Overview
-\end_layout
-
-\begin_layout Standard
-The
-\begin_inset Quotes eld
-\end_inset
-
-Nessus
-\begin_inset Quotes erd
-\end_inset
-
- Project provides powerful, up-to-date and easy to use remote security scanner
- as Free Software under GNU General Public License (GNU GPL).
- Nessus will allow you to audit remotely a given network and determine whether
- bad guys (aka 'crackers') may break into it, or misuse it in some way.
-\end_layout
-
-\begin_layout Paragraph
-Intelligent Scanning
-\end_layout
-
-\begin_layout Standard
-Unlike many other security scanners, Nessus does not take anything for granted.
- That is, it will not consider that a given service is running on a fixed
- port - that is, if you run your web server on port 1234, Nessus will detect
- it and test its security.
- It will also not determine a security vulnerability is present by just
- regarding the version number of the remote service, but will really attempt
- to exploit the vulnerability.
-
-\end_layout
-
-\begin_layout Paragraph
-Modular Architecture
-\end_layout
-
-\begin_layout Standard
-The client/server arquitecture allows you flexibility to deploy the scanner
- (server) and the GUI (client) in multiple configurations reducing management
- costs (one server can be used by multiple clients) Some other features
- of the Nessus Security Scanner are:
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-CVE compatible
-\end_layout
-
-\begin_layout Standard
-\noindent
-Each plugin links to CVE for administrators to retrieve further information
- on published vulnerabilities.
- They also includes references to
-\series bold
-CERT, Bugtraq
-\series default
-, and vendor security alerts.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Plug-in architecture
-\end_layout
-
-\begin_layout Standard
-\noindent
-Each security test is written as an external plugin.
- This way, you can easily add your own tests without having to read the
- code of the Nessus Server engine
-\family typewriter
-nessusd
-\family default
-.
- The complete list of the Nessus plugins is available at http://cgi.nessus.org/plu
-gins.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-NASL
-\end_layout
-
-\begin_layout Standard
-\noindent
-The Nessus Security Scanner includes NASL, (Nessus Attack Scripting Language)
- a language designed to write security test easily and quickly.
- (security checks can also be written in C)
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Up-to-date security vulnerability database
-\end_layout
-
-\begin_layout Standard
-\noindent
-We mostly focus on the development of security checks for recent security
- holes.
- Our security checks database is updated on a daily basis, and all the newest
- security checks are available at http://www.nessus.org/scripts.php and on
- the FTP servers and mirrors.
-
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Can test an unlimited amount of hosts at the same time
-\end_layout
-
-\begin_layout Standard
-\noindent
-Depending of the power of the station you run the Nessus Server onto, you
- can test two, ten or forty hosts at the same time.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Smart service recognition
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus does not believe that the target hosts will respect the IANA assigned
- port numbers.
- This means that it will recognize a FTP server running on a non-standard
- port (31337 say), or a web server running on port 8080.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Multiples services
-\end_layout
-
-\begin_layout Standard
-\noindent
-Imagine that you run two web servers (or more) on your host, one on port
- 80 and another on port 8080.
- When it will come to testing their security, Nessus will test both of them.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Tests cooperation
-\end_layout
-
-\begin_layout Standard
-\noindent
-The security tests performed by Nessus cooperate so that nothing useless
- is made.
- If your FTP server does not offer anonymous logins, then anonymous-related
- security checks will not be performed.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Complete reports
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus will not only tell you what's wrong on your network, but will, most
- of the time, tell you how to prevent crackers from exploiting the security
- holes found and will give you the risk level of each problem found (from
- Low to Very High)
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Exportable reports
-\end_layout
-
-\begin_layout Standard
-\noindent
-The Unix client can export Nessus reports as XML, HTML, text, LaTeX, PDF
- and an easy-to-parse file format.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Full SSL support
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus has the ability to test SSLized services such as https, smtps, imaps,
- and more.
- You can even supply Nessus with a certificate so that it can integrates
- into a PKI-fied environement.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Smart plugins (optional)
-\end_layout
-
-\begin_layout Standard
-\noindent
-Nessus will determine which plugins should or should not be launched against
- the remote host (for instance, this prevents the testing of Sendmail vulnerabil
-ities against Postfix).
- This option is called "optimizations".
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Non-destructive (optional)
-\end_layout
-
-\begin_layout Standard
-\noindent
-If you don't want to take the risk to bring down services on your network,
- you can enable the "safe checks" option of Nessus, which will make Nessus
- rely on banners rather than exploiting real flaws to determine if a vulnerabili
-ty is present.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Independent developers
-\end_layout
-
-\begin_layout Standard
-\noindent
-The Nessus developers are independent from the rest of the world, so we
- will not hide a security vulnerability in the program XYZ because we have
- a contract with them.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Easy-to-reach developers
-\end_layout
-
-\begin_layout Standard
-\noindent
-You feel that there is a missing feature? Just contact ushttp://www.nessus.org/con
-tact/ or use the Nessus mailing lists.
- We reply and implement what makes sense.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Open bug tracking system.
-\end_layout
-
-\begin_layout Standard
-\noindent
-Found a bug? Report it here: http://bugs.nessus.org.
-\end_layout
-
-\begin_layout Paragraph
-\noindent
-Huge number of tests
-\end_layout
-
-\begin_layout Standard
-\noindent
-There are more than 7000 nessus tests (and constantly growing!) which are
- divided into 23 different families:
-\end_layout
-
-\begin_layout Itemize
-Backdoors
-\end_layout
-
-\begin_layout Itemize
-CGI abuses
-\end_layout
-
-\begin_layout Itemize
-CISCO
-\end_layout
-
-\begin_layout Itemize
-Denial of Service
-\end_layout
-
-\begin_layout Itemize
-Finger abuses
-\end_layout
-
-\begin_layout Itemize
-Firewalls
-\end_layout
-
-\begin_layout Itemize
-FTP
-\end_layout
-
-\begin_layout Itemize
-Gain a shell remotely
-\end_layout
-
-\begin_layout Itemize
-Gain root remotely
-\end_layout
-
-\begin_layout Itemize
-General
-\end_layout
-
-\begin_layout Itemize
-Misc.
-\end_layout
-
-\begin_layout Itemize
-Netware
-\end_layout
-
-\begin_layout Itemize
-NIS
-\end_layout
-
-\begin_layout Itemize
-Port scanners
-\end_layout
-
-\begin_layout Itemize
-Remote file access
-\end_layout
-
-\begin_layout Itemize
-RPC
-\end_layout
-
-\begin_layout Itemize
-Settings
-\end_layout
-
-\begin_layout Itemize
-SMTP problems
-\end_layout
-
-\begin_layout Itemize
-SNMP
-\end_layout
-
-\begin_layout Itemize
-Untested
-\end_layout
-
-\begin_layout Itemize
-Useless services
-\end_layout
-
-\begin_layout Itemize
-Windows
-\end_layout
-
-\begin_layout Section
-Installation
-\end_layout
-
-\begin_layout Standard
-Note that only the source is what the Nessus developer team primarily tests
- in depth.
- Binary installation packages are likely to be available for most standard
- operating systems but not necessarily be tested by the Nessus development
- team.
- Operating systems not listed here may offer well-maintained packages as
- well.
-
-\end_layout
-
-\begin_layout Section
-Server Installation
-\end_layout
-
-\begin_layout Standard
-The server package is composed of four components
-\end_layout
-
-\begin_layout Itemize
-OpenVAS libraries
-\end_layout
-
-\begin_layout Itemize
-OpenVAS libnasl libraries
-\end_layout
-
-\begin_layout Itemize
-OpenVAS server
-\end_layout
-
-\begin_layout Itemize
-OpenVAS plugins
-\end_layout
-
-\begin_layout Standard
-The server package depends on
-\end_layout
-
-\begin_layout Itemize
-libgnutls
-\end_layout
-
-\begin_layout Itemize
-libpcap
-\end_layout
-
-\begin_layout Itemize
-libgpgme
-\end_layout
-
-\begin_layout Itemize
-bison
-\end_layout
-
-\begin_layout Subsection
-From Source
-\end_layout
-
-\begin_layout Standard
-The usual way of installing from scratch is to get a current SVN snapshot
- from http://wald.intevation.org/scm/?group_id=29 or a source tar-ball of
- the modules listed above from http://wald.intevation.org/projects/openvas/
- and perform the usual sequence
-\begin_inset Quotes eld
-\end_inset
-
-./configure ; make ; make install
-\begin_inset Quotes erd
-\end_inset
-
-.
- In this case, the server modules have to be configured in the following
- sequence
-\end_layout
-
-\begin_layout Enumerate
-openvas-libraries
-\end_layout
-
-\begin_layout Enumerate
-openvas-libnasl
-\end_layout
-
-\begin_layout Enumerate
-openvas-server
-\end_layout
-
-\begin_layout Enumerate
-openvas-plugins
-\end_layout
-
-\begin_layout Standard
-Please read the usual installation relevant files and configuration options
- for each package.
-\end_layout
-
-\begin_layout Subsection
-Debian GNU/Linux
-\end_layout
-
-\begin_layout Standard
-At the moment, support for building the debian way has not been integrated
- into OpenVAS libnasl package.
- For the other packages dpkg-buildpackage should do the trick
-\end_layout
-
-\begin_layout Subsection
-RedHat/SUSE Linux
-\end_layout
-
-\begin_layout Standard
-Some rpm spec files exist in some of the packages.
- They may/may not build.
- We are working on it!.
- Please follow the thread at http://lists.wald.intevation.org/pipermail/openvas-dev
-el/2008-January/000559.html
-\end_layout
-
-\begin_layout Subsection
-MS Windows
-\end_layout
-
-\begin_layout Standard
-No support for an MS Windows server exists at the moment.
- Though this does not rule out the possibility of being able to build a
- server package using the cygwin toolkit.
-\end_layout
-
-\begin_layout Section
-Client Installation
-\end_layout
-
-\begin_layout Subsection
-From Source
-\end_layout
-
-\begin_layout Standard
-The usual way of installing from scratch is to get a current CVS snapshot
- or a source tar-ball of the module
-\begin_inset Quotes eld
-\end_inset
-
-OpenVAS-Client
-\begin_inset Quotes erd
-\end_inset
-
- and perform the usual sequence
-\begin_inset Quotes eld
-\end_inset
-
-./configure ; make ; make install
-\begin_inset Quotes erd
-\end_inset
-
-.
- Please also as usual read the files about installation and configuration
- options in the packages first.
-\end_layout
-
-\begin_layout Subsection
-Debian GNU/Linux
-\end_layout
-
-\begin_layout Standard
-Please refer to the Debian documentation on how to install standard Debian
- packages.
- Debian actively support Nessus packages.
-\end_layout
-
-\begin_layout Subsubsection
-Debian
-\begin_inset Quotes eld
-\end_inset
-
-Woody
-\begin_inset Quotes erd
-\end_inset
-
- 3.0
-\end_layout
-
-\begin_layout Standard
-The official version of Nessus for Woody is 1.0.10.
- This is by far outdated, you should neither use Nessus Server nor Client
- as shipped with Woody!
-\end_layout
-
-\begin_layout Standard
-The build- and run-dependencies of OpenVAS-Client are conservative so that
- you do not need to backport any other package for backporting OpenVAS-Client.
- Thus it might work to create a so-called
-\begin_inset Quotes eld
-\end_inset
-
-backport
-\begin_inset Quotes erd
-\end_inset
-
- for Woody from a newer Debian source package of OpenVAS-Client.
-\end_layout
-
-\begin_layout Subsubsection
-Debian
-\begin_inset Quotes eld
-\end_inset
-
-Sarge
-\begin_inset Quotes erd
-\end_inset
-
- 3.1
-\end_layout
-
-\begin_layout Standard
-The official version of Nessus for Sarge is 2.2.3.
- OpenVAS-Client is compatible with this Nessus Server, but it is recommended
- to update the Nessus Server to get the newest bug-fixes.
-\end_layout
-
-\begin_layout Standard
-The build- and run-dependencies of OpenVAS-Client are conservative so that
- you do not need to backport any other package for backporting OpenVAS-Client.
- Thus it might work to create a so-called
-\begin_inset Quotes eld
-\end_inset
-
-backport
-\begin_inset Quotes erd
-\end_inset
-
- for Sarge from a newer Debian source package of OpenVAS-Client.
-\end_layout
-
-\begin_layout Subsubsection
-Debian
-\begin_inset Quotes eld
-\end_inset
-
-Etch
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-At time of writing, Etch is the current Testing version of Debian and thus
- in flux.
- At least Nessus 2.2.7 is included.
- It is expected that OpenVAS-Client packages will appear, once OpenVAS-Client
- is released.
-\end_layout
-
-\begin_layout Subsection
-RedHat Linux
-\end_layout
-
-\begin_layout Standard
-In the download section of www.nessus.org you might also find RPM packages
- for RedHat and Fedora, created by Tenable Network Security.
-\end_layout
-
-\begin_layout Subsubsection
-Fedora Core 4 and 5
-\end_layout
-
-\begin_layout Standard
-This distribution actively maintains Nessus as extra packages.
- In case you need a newer version than shipped, you may find backports.
- Backports for RPM packages maybe found via rpmfind.net or similar services.
- At time of writing, OpenVAS-Client is not yet officially part of Fedora
- or Fedora extras.
-\end_layout
-
-\begin_layout Standard
-The build- and run-dependencies of OpenVAS-Client are conservative so that
- you do not need to backport any other package for backporting OpenVAS-Client.
- It might even work to install newer packages directly.
-\end_layout
-
-\begin_layout Subsection
-SUSE Linux
-\end_layout
-
-\begin_layout Standard
-In the download section of www.nessus.org you might also find RPM packages
- for SUSE, created by Tenable Network Security.
-\end_layout
-
-\begin_layout Subsubsection
-SUSE Linux 9.2
-\end_layout
-
-\begin_layout Standard
-Nessus is part of this distribution with the latest 2.0 release.
- It is highly recommended you update Nessus Server to latest 2.2 release.
- Backports for RPM packages maybe found via rpmfind.net or similar services.
-\end_layout
-
-\begin_layout Standard
-For OpenVAS-Client there is currently no official package for SUSE.
-\end_layout
-
-\begin_layout Standard
-The build- and run-dependencies of OpenVAS-Client are conservative so that
- you do not need to backport any other package for backporting OpenVAS-Client.
- It might even work to install newer packages directly.
-\end_layout
-
-\begin_layout Subsection
-MS Windows
-\end_layout
-
-\begin_layout Subsubsection
-Windows XP SP2
-\end_layout
-
-\begin_layout Standard
-For Windows a regular setup package is available for OpenVAS-Client, usually
- called
-\shape italic
-OpenVAS-ClientN.N.N-setup-LL.exe
-\shape default
-.
- Either execute it directly or use this in the Windows Manager for Software.
- This is also the tool where you can easily and cleanly deinstall OpenVAS-Client
- again.
- N.N.N defines the version of Nessus, e.g.
- 1.0.0.
- LL defines the language where
-\begin_inset Quotes eld
-\end_inset
-
-en
-\begin_inset Quotes erd
-\end_inset
-
- means english,
-\begin_inset Quotes eld
-\end_inset
-
-de
-\begin_inset Quotes erd
-\end_inset
-
- german and
-\begin_inset Quotes eld
-\end_inset
-
-sv
-\begin_inset Quotes erd
-\end_inset
-
- swedish version.
-\end_layout
-
-\begin_layout Subsection
-Migrating Nessus GTK Client from version 2.2
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client has a new way to store session data locally compared to the
- GTK client that was included in Nessus 2.2.
- In fact, the whole concept of tasks, scopes and reports is new since then.
-\end_layout
-
-\begin_layout Standard
-The main difference is that Nessus GTK Clients upto 2.2 consider a single
- file
-\begin_inset Quotes eld
-\end_inset
-
-.nessusrc
-\begin_inset Quotes erd
-\end_inset
-
- in the users home directory.
- The newer versions use a directory structure with the main directory
-\begin_inset Quotes eld
-\end_inset
-
-.nessus
-\begin_inset Quotes erd
-\end_inset
-
- in the users home directory.
-
-\end_layout
-
-\begin_layout Standard
-Nonetheless, there will be no conflict when running the new version because
- the new version uses the .nessusrc file as the reference for the global
- setting (see below).
- In other words, the configuration of your Nessus GTK Client 2.2 will be
- the default configuration for OpenVAS-Client.
-\end_layout
-
-\begin_layout Standard
-It is even possible to run a Nessus GTK Client 2.2 after a newer version
- has been launched.
- Version 2.2 will simply use the same file
-\begin_inset Quotes eld
-\end_inset
-
-.nessusrc
-\begin_inset Quotes erd
-\end_inset
-
-, the new version uses for the global settings.
-
-\end_layout
-
-\begin_layout Section
-Starting the server
-\end_layout
-
-\begin_layout Standard
-Once the server package and openvas-client has been installed, you will
- need to initialize your installation by
-\end_layout
-
-\begin_layout Itemize
-Generating an OpenVAS server certificate by running
-\series bold
-openvas-mkcert
-\end_layout
-
-\begin_layout Itemize
-Adding an OpenVAS user by running
-\series bold
-openvas-adduser
-\end_layout
-
-\begin_layout Itemize
-Start the daemon by running
-\series bold
-openvasd
-\end_layout
-
-\begin_layout Itemize
-Run the openvas-client..
- (remember to accept your newly signed server certificate)
-\end_layout
-
-\begin_layout Section
-The First Report
-\end_layout
-
-\begin_layout Standard
-This section is intended to lead a novice user quickly through a first security
- scan with Nessus/OpenVAS.
- After a successful first scan it is recommended to proceed with the chapter
- on the general usage of OpenVAS-Client.
-\end_layout
-
-\begin_layout Subsection
-Invoking OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-On any unixoid system you can simply type
-\begin_inset Quotes eld
-\end_inset
-
-OpenVAS-Client
-\begin_inset Quotes erd
-\end_inset
-
- in a command shell.
- Of course you should have X running.
-\end_layout
-
-\begin_layout Standard
-For Debian GNU/Linux, SUSE Linux, ReadHat/Fedora and MS Windows you will
- additionally find a menu entry for OpenVAS-Client if installed with one
- of the above explained install packages.
-\end_layout
-
-\begin_layout Subsection
-The Nessus Scan Assistant
-\end_layout
-
-\begin_layout Standard
-If you are new to Nessus and OpenVAS-Client you may want to use the Nessus
- Scan Assistant to perform you first scan.
- The intention of this assistant is summarize the core parameters you need
- to enter for a scan and to be self-explanatory.
-\end_layout
-
-\begin_layout Standard
-However,
-\series bold
-you should note
-\series default
- that the scan performed through the Assistant will be based on the explicitely
- saved global settings.
- If you have switched on some dangerous options already in the global settings,
- these will be inherited!
-\end_layout
-
-\begin_layout Section
-General Usage of OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-This section is intended to explain all general elements of OpenVAS-Client
- and how to use it in a standard way.
- A later chapter will then address more specific features suitable for advanced
- users.
-\end_layout
-
-\begin_layout Subsection
-The Main Window
-\end_layout
-
-\begin_layout Standard
-The main window of OpenVAS-Client is separated into two major sections:
- On the left-hand side the treelist with an overview of the locally stored
- tasks, scopes and reports.
- On the right-hand side there is a notebook with pages for comments, options
- and reports.
- That is the place where a security scan is to be configured, commented
- upon and the result reviewed.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-en.png
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-At the first start of OpenVAS-Client, you will see only one entry in the
- list: Global Settings.
- These settings are defaults coming with OpenVAS-Client.
- They are not covering a specific selection of plugins since a connection
- to a Nessus Server is required for that.
- You can establish a connection with a server and specify the global defaults
- for a plugin selection.
- You should then save your preferred defaults via menu item
-\begin_inset Quotes eld
-\end_inset
-
-Save Global Settings
-\begin_inset Quotes erd
-\end_inset
-
- of menu
-\begin_inset Quotes eld
-\end_inset
-
-File
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsubsection
-Tasks
-\end_layout
-
-\begin_layout Standard
-Tasks are intended to cover all activities of a major topic.
- E.g., a task could be
-\begin_inset Quotes eld
-\end_inset
-
-Test the maschines of our headquarter
-\begin_inset Quotes erd
-\end_inset
-
- or
-\begin_inset Quotes eld
-\end_inset
-
-Customer XYZ Inc.
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-A task can contain a comment that explains the task in more detail.
- Also any type of additional info or reminder can be entered in the comment
- area, e.g.
- when to run the next series of scans or based on which contract the scans
- are performed.
-\end_layout
-
-\begin_layout Standard
-A task has neither options nor a report.
- It just contains a number of scopes.
-\end_layout
-
-\begin_layout Standard
-Possible operations for tasks are:
-\end_layout
-
-\begin_layout Paragraph
-New
-\end_layout
-
-\begin_layout Standard
-Adds a new task entitled
-\begin_inset Quotes eld
-\end_inset
-
-unnamed
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Paragraph
-Rename
-\end_layout
-
-\begin_layout Standard
-Allows to edit the title right in the treelist either by clicking on the
- title or by selecting the corresponding menu item.
-\end_layout
-
-\begin_layout Paragraph
-Remove
-\end_layout
-
-\begin_layout Standard
-This means the removal of all associated scopes and thus the removal action
- prompts for an additional confirmation.
-\end_layout
-
-\begin_layout Subsubsection
-Scopes
-\end_layout
-
-\begin_layout Standard
-A scope can be seen as a sub-task.
- It defines a certain security scan.
- The title should indicate the scope of this scan, e.g.
-
-\begin_inset Quotes eld
-\end_inset
-
-Careful scan of web server production system
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-Aggressive scan of web server alpha test sytem
-\begin_inset Quotes erd
-\end_inset
-
- or
-\begin_inset Quotes eld
-\end_inset
-
-All Sun workstations
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-Comments can also be specified for each scope and may explain the scope
- in more detail as well as contain any other helpful hint regarding the
- respective scope.
-\end_layout
-
-\begin_layout Standard
-The scope is associated with a full set of options for the security scan.
- Creating a new scope, the general preferences are copied.
- The scan options are explained in detail in a later chapter.
- However, for each scope a connection to a Nessus Server can be established.
- Has this been done, the actual selection of the plugins being a part of
- the options can be performed (a plug icon right-hand of the title indicates
- the active connection).
- The reason is that each Nessus Server may contain its own set of plugins
- and thus with establishing a connection, OpenVAS-Client retrieves the list
- of available plugins.
-\end_layout
-
-\begin_layout Standard
-Next, a scope may contain a number of reports.
- Whenever a scope is successfully executed, the resulting report is added
- in its list of reports.
- Also, importing a report from a file or from a Nessus Server will add the
- report to the currently selected scope.
-\end_layout
-
-\begin_layout Standard
-Please note that changes to a scope are always and only stored when executing
- a scan.
- If you make changes to a scope like a new plugin selection and leave OpenVAS-Cl
-ient without running a scan, these changes will be discarded.
-\end_layout
-
-\begin_layout Standard
-Possible operations for scopes are:
-\end_layout
-
-\begin_layout Paragraph
-Execute
-\end_layout
-
-\begin_layout Standard
-The scope configuration is stored to disk and a security scan is executed
- with the currently specified options issueing the currently connected Nessus
- Server.
-\end_layout
-
-\begin_layout Paragraph
-New
-\end_layout
-
-\begin_layout Standard
-Adds a new scope entitled
-\begin_inset Quotes eld
-\end_inset
-
-unnamed
-\begin_inset Quotes erd
-\end_inset
-
- as part of the currently selected task.
- As a default the global settings are copied.
- Note, that only explicitely saved global settings are taken as defaults.
- If you changed them inside OpenVAS-Client without saving them, they will
- have no effect.
-\end_layout
-
-\begin_layout Paragraph
-Rename
-\end_layout
-
-\begin_layout Standard
-Allows to edit the title right in the treelist either by clicking on the
- title or by selecting the corresponding menu item.
-\end_layout
-
-\begin_layout Paragraph
-Remove
-\end_layout
-
-\begin_layout Standard
-This means the removal of all associated reports and thus the removal action
- prompts for an additional confirmation.
-\end_layout
-
-\begin_layout Paragraph
-Move to task
-\end_layout
-
-\begin_layout Standard
-It is possible to move a scope with all of its reports from one task to
- another.
- This menu item has subitems which represent the other tasks.
- Select one of them and the scope will be moved.
-\end_layout
-
-\begin_layout Paragraph
-Open
-\end_layout
-
-\begin_layout Standard
-You can load a scope file and add it to the current task with this menu
- command.
- Note that here only the parameter sets are covered but not the reports
- which are represented by files of their own.
- So, opening and saving (see below) scopes is a method to transfer you settings
- to someone else or to create a copy of the current scope for yourself.
-\end_layout
-
-\begin_layout Paragraph
-Save As
-\end_layout
-
-\begin_layout Standard
-Saves the current scope to a file (which is of nessusrc type).
- Note that only the parameter sets are stored but not the reports.
- See above the description of
-\begin_inset Quotes eld
-\end_inset
-
-Open
-\begin_inset Quotes erd
-\end_inset
-
- for more hints.
-
-\end_layout
-
-\begin_layout Subsubsection
-Reports
-\end_layout
-
-\begin_layout Standard
-A report is the result of a security scan.
- It contains the results of the executed plugins associated with the correspondi
-ng subnet, host, port and severity.
-\end_layout
-
-\begin_layout Standard
-Managed within OpenVAS-Client, additionally a comment and, if available,
- the scan options leading to the report, are stored.
- These additional information are not contained in the plain Nessus report
- files and thus get lost when being exported.
- This also means that imported reports have no comments or scan options
- associated.
-\end_layout
-
-\begin_layout Standard
-Possible operations for reports are:
-\end_layout
-
-\begin_layout Paragraph
-Remove
-\end_layout
-
-\begin_layout Standard
-Deletes the report and, if associated, its comments and options.
- The user is prompted to confirm the removal.
-\end_layout
-
-\begin_layout Paragraph
-Import
-\end_layout
-
-\begin_layout Standard
-Allows to import a report from a file.
- The standard exchange format is NBE (files suffixed
-\begin_inset Quotes eld
-\end_inset
-
-.nbe
-\begin_inset Quotes erd
-\end_inset
-
-).
- The file selection dialog allows to select the desired report file.
- A error hint will be displayed if the file format was not NBE.
- Else, the report is added to the currently selected scope.
- Neither comments nor options will be there for a report imported from a
- NBE file.
-\end_layout
-
-\begin_layout Paragraph
-Export
-\end_layout
-
-\begin_layout Standard
-Allows to export the currently selected report either in a re-importable
- format (NBE) or in a format for further processing or presentation (XML,
- HTML, HTML with Pies and Graphs, LaTeX, ASCII Text
- and PDF).
- It is recommended to use NBE if re-importing is planned and to use PDF
- for creating simple report documents that need no further editing.
- Use one of the other if you want to further process the report or integrate
- it into your own document style.
-\end_layout
-
-\begin_layout Paragraph
-Print
-\end_layout
-
-\begin_layout Standard
-Selecting the Print command will issue the creation of a PDF report and
- run a PDF Viewer installed on your system.
- A number of well-known PDF Viewers is tried.
- If you think you have one installed but it still does not work, please
- check whether the executable file is covered by the search paths.
-
-\end_layout
-
-\begin_layout Subsection
-Authentication
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client needs to connect to a Nessus Server in order to retrieve
- the available plugins and to actually execute a security scan.
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client can handle mutiple connections to different servers.
- Each scope has a connection of its own.
- Additionally, the Global Settings can be connected to a Nessus Server to
- define default plugin selections and plugin parameters.
- Note that only explicitly saved Global Settings are taken as defaults for
- new Scopes.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/authentication-dlg-en.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-The connection status is indicated with a icon in the tasks/scopes/reports
- treelist next to the title of the global settings or a scope.
- Only scopes are connected with Nessus Server.
-\end_layout
-
-\begin_layout Standard
-More information on the connection status is shown in the statusbar at the
- bottom of the main window.
- There, the actual connection information is displayed, ie.
-
-\begin_inset Quotes eld
-\end_inset
-
-Connection: username at host.test.example
-\begin_inset Quotes erd
-\end_inset
-
-.
- At bottom right there is an icon indicating whether the connection is encrypted
- or not, just like most web browsers indicate this.
-\end_layout
-
-\begin_layout Standard
-The connection dialog allows to specify the following data for establishing
- a connection to a Nessus Server:
-\end_layout
-
-\begin_layout Paragraph
-Host
-\end_layout
-
-\begin_layout Standard
-The domain name or IP of the server where a Nessus Server is running.
-\end_layout
-
-\begin_layout Paragraph
-Port
-\end_layout
-
-\begin_layout Standard
-The port where the Nessus Server waits for connections.
- Older Nessus Servers used 3001, but the official port now is 1241.
- With the default button you can always return to this default quickly.
-\end_layout
-
-\begin_layout Paragraph
-Login
-\end_layout
-
-\begin_layout Standard
-Your username at the selected host.
- To use a Nessus Server you have to have an account for the Nessus Server.
- The administrator of the server should create one for you.
-\end_layout
-
-\begin_layout Paragraph
-Password
-\end_layout
-
-\begin_layout Standard
-The password for your Nessus Server account.
- Don't use the same one you have for your other user accounts and especially
- if you ever use unencrypted connections.
-\end_layout
-
-\begin_layout Paragraph
-SSL Options
-\end_layout
-
-\begin_layout Subparagraph
-Use SSL encryption:
-\end_layout
-
-\begin_layout Standard
-For the authentication there are two basic methods, via login/password combinati
-on or via certificate (with or without password).
- In any case you should switch on SSL encryption to not have the password
- transferred as cleartext.
- However, if you are in an evironment where you don't get SSL to work, switching
- it off is the work around to run Nessus at last.
-\end_layout
-
-\begin_layout Subparagraph
-Trusted CA:
-\end_layout
-
-\begin_layout Standard
-This certificate defines a certificate authority (CA) you trust.
- With this certificate you will check that you are connecting to a trusted
- Nessus Server.
- This is checked if you have the Paranoia Level set to 2 or 3, it is not
- checked with a Paranoia Level of 1.
- Note, that you can set the Paranoia Level by hand in the nessusrc files
- or when first connecting to a Nessus Server where you are asked explictly.
-\end_layout
-
-\begin_layout Standard
-The default path for the Trusted CA is the filename used by the Nessus Server
- itself.
- Thus, if you are running Nessus Client on the same maschine or have the
- same volume mounted, you can just use the default.
-\end_layout
-
-\begin_layout Standard
-If you are running Nessus Client from a more remote maschine, you need to
- have a copy of the CA certificate and place it to some arbitrary place
- in your home directory.
-\end_layout
-
-\begin_layout Subparagraph
-Authentication by Certificate:
-\end_layout
-
-\begin_layout Standard
-If you use this method you have to have a key/certificate pair created for
- you.
- This is usually done by the administrator of Nessus Server using the correspond
-ing scripts.
- The administrator will give you the two files you need to specify (User
- Certificate File and User Key File).
- The administrator may create a key without a password or with a password.
- If you have a password for the User Key File you must enter the password
- in the corresponding textentry.
-\end_layout
-
-\begin_layout Subsection
-Scan Options
-\end_layout
-
-\begin_layout Standard
-This section explains the most important configuration options for a security
- scan.
- More special option (access rules, knowledge base detached scans) are explained
- later in the chapter on special features.
-\end_layout
-
-\begin_layout Subsubsection
-General
-\end_layout
-
-\begin_layout Standard
-This page covers all the general scan options.
- See the screenshot for the main window above.
-\end_layout
-
-\begin_layout Paragraph
-Port range
-\end_layout
-
-\begin_layout Standard
-Ports that will be scanned by Nessus Server.
- You can enter single ports, such as
-\begin_inset Quotes eld
-\end_inset
-
-1-8000
-\begin_inset Quotes erd
-\end_inset
-
- or more complex sets, such as
-\begin_inset Quotes eld
-\end_inset
-
-21,23,25,1024-2048,6000
-\begin_inset Quotes erd
-\end_inset
-
-.
- Put
-\begin_inset Quotes eld
-\end_inset
-
--1
-\begin_inset Quotes erd
-\end_inset
-
- for no portscan, or put
-\begin_inset Quotes eld
-\end_inset
-
-default
-\begin_inset Quotes erd
-\end_inset
-
- to scan the default ports in the Nessus services file.
-\end_layout
-
-\begin_layout Paragraph
-Consider unscanned ports as closed
-\end_layout
-
-\begin_layout Standard
-To save scanning time, you may ask Nessus Server to declare TCP ports it
- did not scan as closed.
- This will result in an incomplete audit but it will reduce scanning time
- and prevent Nessus Server from sending packets to ports you did not specify.
- If this option is disabled, then Nessus Server will consider ports whose
- state it does not know as open.
-\end_layout
-
-\begin_layout Paragraph
-Number of hosts to test at the same time
-\end_layout
-
-\begin_layout Standard
-Maximal number of hosts that the Nessus Server will test at the same time.
- Be aware that the Nessus Server will spawn max_hosts max_checks processes!
-\end_layout
-
-\begin_layout Paragraph
-Number of checks to perform at the same time
-\end_layout
-
-\begin_layout Standard
-Maximal number of security checks that will be launched at the same time
- against each host.
- Be aware that the Nessus Server will spawn max_hosts x max_checks processes!
-\end_layout
-
-\begin_layout Paragraph
-Path to CGIs
-\end_layout
-
-\begin_layout Standard
-It is possible to check for the presence of CGIs in multiple paths like
-
-\begin_inset Quotes eld
-\end_inset
-
-/cgi-bin
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-/cgis
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-/home-cgis
-\begin_inset Quotes erd
-\end_inset
-
- and so on.
- In that case, put all your paths here separated by colons.
- For instance:
-\begin_inset Quotes eld
-\end_inset
-
-/cgi-bin:/cgi-aws:/~deraison/cgi
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Paragraph
-Do a reverse lookup of the IP before testing it
-\end_layout
-
-\begin_layout Standard
-If this option is set, Nessus Server will do a reverse lookup on the IP
- addresses before it tests them.
- This may slow down the whole test.
-\end_layout
-
-\begin_layout Paragraph
-Optimize the test
-\end_layout
-
-\begin_layout Standard
-Security tests may ask the Nessus Server to be launched if and only if some
- information gathered by other test exist in the knowledge base, or if and
- only if a given port is open.
- This option speeds up the test, but may make Nessus Server miss some vulnerabil
-ity.
- If you are paranoid, disable this option.
-\end_layout
-
-\begin_layout Paragraph
-Safe checks
-\end_layout
-
-\begin_layout Standard
-Some security checks may harm the target server, by disabling the remote
- service temporarily or until a reboot.
- If you enable this option, Nessus Server will rely on banners instead of
- actually performing a security check.
- You will obtain a less reliable report, but you will less likely disrupt
- the network users by doing a test.
- From a security point of view, we recommend you disable this option.
- From a sysadmin point of view, we recommand you enable it.
-\end_layout
-
-\begin_layout Paragraph
-Designate hosts by their MAC address
-\end_layout
-
-\begin_layout Standard
-If you enable this option, the hosts on the local network will be designated
- by their ethernet MAC address instead of their IP address.
- This is especially useful if you are using Nessus in a DHCP network.
- If unsure, disable this option.
-\end_layout
-
-\begin_layout Paragraph
-Port Scanner
-\end_layout
-
-\begin_layout Standard
-This is the list of available port scanners.
- Port scanners are a special category of plugins and therefore presented
- separately from the other plugins.
- The list is only filled if a connection to a Nessus Server has been established.
- You can switch on one or more of the scanners.
- Clicking on an entry shows the details for the respecitve scanner plugin.
-\end_layout
-
-\begin_layout Subsubsection
-Plugins
-\end_layout
-
-\begin_layout Standard
-The plugins are stored on the Nessus Server.
- Thus, to make a selection of the plugins to apply you need to connect to
- a server.
- Otherwise this page will remain empty.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-plugins-en.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-The Plugins are separated into a number of families which can be as a whole
- activated or deactivated by checking the box right of family title.
- Also, a family can be expanded to show all of its member plugins where
- you can refine the selection by activating or deactivating single plugins
- using the checkbox to the right.
-\end_layout
-
-\begin_layout Standard
-The column
-\begin_inset Quotes eld
-\end_inset
-
-Warning
-\begin_inset Quotes erd
-\end_inset
-
- contains warning sign for some plugins.
- The warning sign means that this plugin may harm the target host by disabling
- the attacked service or by crashing the host.
- You should be careful when you enable it since it may force you to reboot
- your servers or restart some services manually.
-\end_layout
-
-\begin_layout Standard
-Below the plugin list the total number of plugins loaded from the server
- is shown, together with the total number of currently selected plugin as
- well as the number of plugins shown due to a applied filter.
-\end_layout
-
-\begin_layout Standard
-The following actions are possible:
-\end_layout
-
-\begin_layout Subparagraph
-Enable all
-\end_layout
-
-\begin_layout Standard
-Enables all plugin categories.
-\end_layout
-
-\begin_layout Subparagraph
-Disable all
-\end_layout
-
-\begin_layout Standard
-Disables all plugin categories.
-\end_layout
-
-\begin_layout Subparagraph
-Expand all
-\end_layout
-
-\begin_layout Standard
-Expands the Plugin tree-list to maximum so that the list contains all plugins.
-\end_layout
-
-\begin_layout Subparagraph
-Collapse all
-\end_layout
-
-\begin_layout Standard
-Only show the Plugin families.
-\end_layout
-
-\begin_layout Subparagraph
-Enable dependencies at runtime
-\end_layout
-
-\begin_layout Standard
-If you enable this option, then Nessus Server will enable the plugins that
- are depended on by the set of plugins you selected.
-\end_layout
-
-\begin_layout Subparagraph
-Silent dependencies
-\end_layout
-
-\begin_layout Standard
-If you enable this option, then Nessus Server will not report data coming
- from the plugins that you did not specifically enable.
-\end_layout
-
-\begin_layout Subparagraph
-Filter
-\end_layout
-
-\begin_layout Standard
-The filter dialog lets you select plugins with the characteristics you want.
-
-\series bold
-Note
-\series default
-, that you will erase your previous selection immedialty with applying a
- filter.
-\end_layout
-
-\begin_layout Paragraph
-Plugin information dialog
-\end_layout
-
-\begin_layout Standard
-Double-Clicking on a specific plugin title will raise a information dialog
- for the respective plugin.
-\end_layout
-
-\begin_layout Standard
-The information shown are the ones specified within the corresponding plugin.
-\end_layout
-
-\begin_layout Standard
-The following actions are possible in this dialog:
-\end_layout
-
-\begin_layout Subparagraph
-Set plugin timeout
-\end_layout
-
-\begin_layout Standard
-Allows to specify a timeout for the plugin.
-\end_layout
-
-\begin_layout Subparagraph
-Show dependencies
-\end_layout
-
-\begin_layout Standard
-Another info dialog is raised listing up the dependencies for the plugin.
- Also it is provided a hint whether the dependencies are currently enabled
- or disabled.
-\end_layout
-
-\begin_layout Subsubsection
-Credentials
-\end_layout
-
-\begin_layout Standard
-Some of the plugins allow to enter credentials to test certain applications,
- for example Samba or Web-Sites (HTTP).
- These plugins work the very same way as the plugins listed in the
-\begin_inset Quotes eld
-\end_inset
-
-Plugin Preferences
-\begin_inset Quotes erd
-\end_inset
-
- list.
- For better handling they are collected under
-\begin_inset Quotes eld
-\end_inset
-
-Credentials
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-credentials-en.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Plugin Preferences
-\end_layout
-
-\begin_layout Standard
-Some of the plugins allow to refine with specific parameters.
- All of the configurable plugins' parameters are collected on this page
- where the user may modify the default values.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-pluginprefs-en.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Only a comparably small number of plugins offers a configuration.
-\end_layout
-
-\begin_layout Subsubsection
-Target Selection
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-targetselection-en.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Paragraph
-Target(s)
-\end_layout
-
-\begin_layout Standard
-The first host(s) that will be attacked by Nessus Server.
- The options below allow you to extend the test to a larger set of computer.
- You may define several primary targets by separating them with a comma
- (,).
- ie :
-\begin_inset Quotes eld
-\end_inset
-
-host1,host2
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-A special syntax is
-\begin_inset Quotes eld
-\end_inset
-
-file:/some/where/targetlist.txt
-\begin_inset Quotes erd
-\end_inset
-
- which means that the actual target names are loaded from that list.
- See for the file syntax also below the description for the button
-\begin_inset Quotes eld
-\end_inset
-
-Read from file
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Paragraph
-Read from file
-\end_layout
-
-\begin_layout Standard
-A textfile can be specified that contains the list of targets.
- This textfile may contain comma-separated lists of host and also may contain
- many of such lines.
-\end_layout
-
-\begin_layout Paragraph
-Perform a DNS Zone transfer
-\end_layout
-
-\begin_layout Standard
-Nessus Server will perform an AXFR request (that is, a zone transfer) to
- the target name server and will attempt to obtain the list of the hosts
- of the target domain.
- Then, it will test each host.
-\end_layout
-
-\begin_layout Subsection
-Reports
-\end_layout
-
-\begin_layout Subsubsection
-Report Page of OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-The report page consists of 3 elements.
- On the left hand a tree list allows to browser via hosts, ports and severity
- to single reports.
- Ontop of this treelist is a selection for re-ordering the tree structure.
- On the right hand the text area contains the actual report text.
- The whole design is focused on supporting an explorative understanding
- of the scan results.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-report-en.png
- width 90text%
- keepAspectRatio
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Report Formats
-\end_layout
-
-\begin_layout Standard
-The scan results can be exported into a number of formats.
- Basically it can be distinguished between 3 types of formats: Interchange-Forma
-ts, Editable Documents and Read-only Documents.
- The last type currently is the PDF Report file.
- With a capable view it allows to browse back and forth through the document
- using the various inserted hyperlinks.
-\end_layout
-
-\begin_layout Standard
-For further information see the section about the menu command
-\begin_inset Quotes eld
-\end_inset
-
-Report->Export
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Section
-Special Features
-\end_layout
-
-\begin_layout Subsection
-OpenVAS-Client Preferences
-\end_layout
-
-\begin_layout Standard
-OpenVAS-Client allows to specify some individual preferences that determine
- some ways how the client GUI works.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/preferences-dlg-en.png
- scale 90
- keepAspectRatio
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-The following selection are available:
-\end_layout
-
-\begin_layout Subsubsection
-User Interface
-\end_layout
-
-\begin_layout Paragraph
-Auto expand tree elements
-\end_layout
-
-\begin_layout Standard
-In the left-hand treeview clicking on a task or a scope automatically expands
- the corresponding tree if checked.
-\end_layout
-
-\begin_layout Standard
-If not checked, the user has to manually click on the expand icon each time.
-\end_layout
-
-\begin_layout Subsubsection
-Connection to Nessus Server
-\end_layout
-
-\begin_layout Paragraph
-Automatically connect
-\end_layout
-
-\begin_layout Standard
-If this setting is enabled, OpenVAS-Client will try to connect to the server
- when a scope is executed.
- For user certificates without a password, this will work immediately.
- For password protected user certificates or simple password based authenticatio
-n, the password will be stored in memory after a successful login until
- OpenVAS-Client is closed.
-\end_layout
-
-\begin_layout Subsubsection
-Plugin Cache
-\end_layout
-
-\begin_layout Paragraph
-Cache plugin information when connecting
-\end_layout
-
-\begin_layout Standard
-If this setting is enabled, OpenVAS-Client will create a cache for the respectiv
-e scope containing all plugin information.
- This has essentially three effects:
-\end_layout
-
-\begin_layout Standard
-First, reconnecting the same scope might be much faster because MD5 check
- sums are used to find out about changed and new plugins.
- Only the changes will be downloaded.
- Of course, connecting to a different Nessus server will usually force a
- new download of all plugins.
-\end_layout
-
-\begin_layout Standard
-Second, all plugin information are available even when the server has not
- been connected.
- Thus you can review which plugins are selected and what the current plugin
- preferences are.
- Note that the selection might change after connecting for a actual scan
- because new plugins occur and some might disappear.
- The latter usually doesn't happen.
- Loading the cache may take a couple of seconds.
- If you don't want this, switch off option
-\begin_inset Quotes eld
-\end_inset
-
-Load plugin cache for scopes immediately
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-Third, the downside of caching: The cache will consume several MBytes for
- each scope.
- If this means a problem, you should disable this feature.
- If you want to remove the caches, search for the files
-\begin_inset Quotes eld
-\end_inset
-
-nessus_plugin_cache
-\begin_inset Quotes erd
-\end_inset
-
- in your Nessus directory (
-\begin_inset Quotes eld
-\end_inset
-
-~/.nessus
-\begin_inset Quotes erd
-\end_inset
-
-).
- Simply deleting them is sufficient.
-\end_layout
-
-\begin_layout Paragraph
-Use plugin cache with reports
-\end_layout
-
-\begin_layout Standard
-Enabling this setting will make OpenVAS-Client attach all Plugin Information
- to newly created scan reports.
- This allows to review the plugin selection and the plugin preferences for
- a report in the OpenVAS-Client GUI.
- So, this cache is for increasing transparency not performance.
-\end_layout
-
-\begin_layout Standard
-Again, the downside is that several MBytes of cache per report will be generated.
- Disable this option if this means a problem.
- If you want to remove the caches, search for the files
-\begin_inset Quotes eld
-\end_inset
-
-nessus_plugin_cache
-\begin_inset Quotes erd
-\end_inset
-
- in your Nessus directory (
-\begin_inset Quotes eld
-\end_inset
-
-~/.nessus
-\begin_inset Quotes erd
-\end_inset
-
-).
- Simply deleting them is sufficient.
-\end_layout
-
-\begin_layout Paragraph
-Load plugin cache for scopes immediately
-\end_layout
-
-\begin_layout Standard
-Disabling this option will cause OpenVAS-Client to not automatically load
- a scope's cache when made active.
- You won't see the plugin selection nor the plugin preferences.
- So, in fact this option could remove the second effect of the above described
- option
-\begin_inset Quotes eld
-\end_inset
-
-Cache plugin information when connecting
-\begin_inset Quotes erd
-\end_inset
-
- for the benefit of avoiding to load possibly huge caches once clicking
- on a scope entry.
-
-\end_layout
-
-\begin_layout Subsubsection
-Report
-\end_layout
-
-\begin_layout Paragraph
-Include plugin details in PDF
-\end_layout
-
-\begin_layout Standard
-Enabling this setting will make OpenVAS-Client add an appendix to each PDF
- Report containing the details of those plugins that produced relevant results
- for the report.
- They are linked within the PDF so that the information can easily be browsed.
-\end_layout
-
-\begin_layout Standard
-Be aware, however, that this could significantly increase the size of your
- PDF file.
- On average, you can expect two plugin descriptions to consume one page.
-\end_layout
-
-\begin_layout Subsubsection
-External Links in HTML/PDF
-\end_layout
-
-\begin_layout Standard
-These settings determine the URLs for linking more information on Nessus
- Plugin, CVE/CAN and BugTraq ID in Reports of format HTML or PDF.
- The defaults as shown in the screenshots are recommended since there up-to-date
- information are to be found.
- The defaults are reactivated when field is left empty.
-\end_layout
-
-\begin_layout Standard
-In case you want to package a Nessus report with e.g.
- CVE/CAN details for offline-reading, you may enter an apropriate definition
- like ``mitre/%s/%s/%s.html'' in case you have a directory structure relative
- to the report file with mitre/CVE/yyyy/nnnn.html and mitre/CAN/yyyy/nnnn.html
- where yyyy is the year and nnnn is the number of the record.
- Then you could package all files together.
-\end_layout
-
-\begin_layout Standard
-Note, that the strings defined here are filled into the html link parameter
- ``href'' as it is.
- The tool ``htmldoc'' is issued to produce a pdf out of this html report.
- Depending on the version and features the created links in the PDF file
- may be created differently.
-\end_layout
-
-\begin_layout Subsection
-User-defined Access Rules
-\end_layout
-
-\begin_layout Subsubsection
-General
-\end_layout
-
-\begin_layout Standard
-Nessus Server keeps a list of access rules similar to usual firewall rules.
- In no way can these be overridden by the Nessus Client.
-\end_layout
-
-\begin_layout Standard
-Furthermore, the Nessus Server Administrator can add specific rules for
- each user while applying the tool
-\family typewriter
-nessus-adduser
-\family default
-.
-\end_layout
-
-\begin_layout Standard
-And finally, the User may add another set of rules in OpenVAS-Client.
-\end_layout
-
-\begin_layout Subsubsection
-Syntax
-\end_layout
-
-\begin_layout Standard
-A rule might either be a default definition:
-\begin_inset Quotes eld
-\end_inset
-
-default deny
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-default reject
-\begin_inset Quotes erd
-\end_inset
-
- or
-\begin_inset Quotes eld
-\end_inset
-
-default accept
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-Or it is a target specific definition that consists of the action (
-\begin_inset Quotes eld
-\end_inset
-
-deny
-\begin_inset Quotes erd
-\end_inset
-
-,
-\begin_inset Quotes eld
-\end_inset
-
-reject
-\begin_inset Quotes erd
-\end_inset
-
- or
-\begin_inset Quotes eld
-\end_inset
-
-accept
-\begin_inset Quotes erd
-\end_inset
-
-) and a target specified with its IP (eg.
- 192.168.10.10).
-\end_layout
-
-\begin_layout Standard
-Note that it must be an IP.
- The use of hostnames is not allowed due to security reasons.
-\end_layout
-
-\begin_layout Subsubsection
-Manage rules in OpenVAS-Client
-\end_layout
-
-\begin_layout Standard
-A rule consists of a action and (in case no default action is dfined) a
- target.
- There are in total 6 actions available where the user can select one in
- the selection box.
- The target is to be specified manually in a text entry field.
-\end_layout
-
-\begin_layout Standard
-Once clicking the button
-\begin_inset Quotes eld
-\end_inset
-
-Add rule
-\begin_inset Quotes erd
-\end_inset
-
-, the specified action/target is added to the group
-\begin_inset Quotes eld
-\end_inset
-
-Clientside userrules
-\begin_inset Quotes erd
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-If a rule in this section is selected, the button
-\begin_inset Quotes eld
-\end_inset
-
-Remove rule
-\begin_inset Quotes erd
-\end_inset
-
- will delete it from the list.
- No serverside rule can be removed of course.
-\end_layout
-
-\begin_layout Subsubsection
-Example for User-defined Access Rule
-\end_layout
-
-\begin_layout Standard
-You are the security team of BigBank Corp.
- The management authorized you to scan the network, BUT you're not allowed
- to scan 172.20.142.2 under any circumstance, because it's a SWIFT server and
- if it goes down, so does the bank (and your company and legal responsability).
- So you add :
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace smallskip
-\end_inset
-
-
-\family typewriter
-deny 172.20.142.2
-\family default
-
-\begin_inset VSpace smallskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-as a user rule in the GUI, and you are now SURE that you'll never scan this
- IP - even if you later on ask nessusd to scan it.
-
-\end_layout
-
-\begin_layout Subsubsection
-Example for a Adminstrator-defined Access Rule
-\end_layout
-
-\begin_layout Standard
-By editing nessusd.rules (only the administrator for Nessus Server can do
- that), you make sure that nessusd will not be used to scan any system it
- should not scan.
- If your internal network is 10.0.0.0/8, you basically want to make sure that
- nobody will scan anything else (either by fat-fingering an IP or just by
- malice), so you edit
-\family typewriter
-nessusd.rules
-\family default
- and you add :
-\begin_inset VSpace smallskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-allow 10.0.0.0/8
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-allow 127.0.0.1
-\end_layout
-
-\begin_layout Standard
-
-\family typewriter
-default deny
-\end_layout
-
-\begin_layout Subsection
-Local Security Checks: Theory
-\end_layout
-
-\begin_layout Subsubsection
-What are "local" security checks?
-\end_layout
-
-\begin_layout Standard
-Starting with Nessus 2.1.0, it is possible to give Nessus SSH credentials
- to log into the remote Unix systems and determine which patchs need to
- be applied.
- What this really means is that if you give Nessus the proper SSH key, it
- will litterally log into the remote host, extract the list of installed
- software, and tell you which packages have an update ready for them.
-\end_layout
-
-\begin_layout Standard
-The real goal of this feature is to easily keep track of all the missing
- patches of a given system, without the potential hazards and false positives
- of remote security checks.
- It is really important to understand that enabling local security checks
- do not discover flaws such as unauthorized suid binaries, they simply determine
- which patches are missing from the remote operating system.
-\end_layout
-
-\begin_layout Subsubsection
-Which operating systems are supported at this time?
-\end_layout
-
-\begin_layout Standard
-At this time, Nessus is able to determine the missing patches of the following
- operating systems :
-\end_layout
-
-\begin_layout Itemize
-AIX 5.x
-\end_layout
-
-\begin_layout Itemize
-Debian
-\end_layout
-
-\begin_layout Itemize
-Fedora Core 1 and 2
-\end_layout
-
-\begin_layout Itemize
-FreeBSD 4.x, 5.x (including the port collection)
-\end_layout
-
-\begin_layout Itemize
-Gentoo Linux (all advisories from 2004)
-\end_layout
-
-\begin_layout Itemize
-Mac OS X (and Mac OS X Server)
-\end_layout
-
-\begin_layout Itemize
-Mandrake Linux (8.0 to 10.0)
-\end_layout
-
-\begin_layout Itemize
-RedHat Enterprise Linux (2.1 and 3.0)
-\end_layout
-
-\begin_layout Itemize
-Solaris (2.5.1, 2.6, 7, 8 and 9)
-\end_layout
-
-\begin_layout Itemize
-SuSE Linux (7.0 to 9.1)
-\end_layout
-
-\begin_layout Itemize
-Microsoft Windows NT, 2000, XP, 2003
-\end_layout
-
-\begin_layout Standard
-We hope to support more systems in the future (HP-UX, Tru64, etc...).
-
-\end_layout
-
-\begin_layout Subsubsection
-Which Solaris patches are checked for?
-\end_layout
-
-\begin_layout Standard
-We have implemented checks for Solaris 2.5.1, 7, 8 and 9 (both on sparc and
- i386 architectures).
- We check for every patch listed by Sun in the "Patch containing security
- fixes" of their patch page.
-\end_layout
-
-\begin_layout Subsubsection
-Is it intended to support more systems?
-\end_layout
-
-\begin_layout Standard
-We do not intend to support every operating system which has ever surfaced
- on the face of earth.
- However, we intend to create
-\begin_inset Quotes eld
-\end_inset
-
-working groups
-\begin_inset Quotes erd
-\end_inset
-
- of people working on a given operating system.
- Basically, we are looking for people who would be responsible for producing
- the security checks relevant to the operating system they use (and love).
- If you are interested in taking part in such a group (or to even lead a
- given OS group), please contact the Nessus Development Team.
-\end_layout
-
-\begin_layout Subsubsection
-What are "local" security checks NOT?
-\end_layout
-
-\begin_layout Standard
-At this time, Nessus does not check the local security policy of the remote
- system, like Tiger does (ie: directories writeable by any users, wrong
- permissions on a sensitive configuration file, and so on...).
- Read about SLAD (Security Local Auditing Daemon) for extensive on-site
- testing of remote targets that porentially are compromised.
- SLAD can be accessed via respective NASL scripts.
-\end_layout
-
-\begin_layout Subsubsection
-Why do we need to perform local security checks, is not Nessus good enough
- to determine security issues?
-\end_layout
-
-\begin_layout Standard
-Nessus 2.0 is, at its heart, a network based scanner.
- This means that it will connect to the remote host and attempt to determine
- the flaws affecting every service on it.
- However, testing everything from the point of view of the network has its
- own shortcomings.
- In particular, a 100% network-based security scanner can not do the following
- :
-\end_layout
-
-\begin_layout Itemize
-Determine client-side flaws: There are more and more client-side vulnerabilities
- published every day, ranging from flaws in mail clients to XML libraries.
- It simply is not possible to check for those from the point of view of
- an active scanner.
- The only way to detect such flaws is to deploy a passive scanner (ie: NeVO)
- or to locally check that every host has been patched.
-\end_layout
-
-\begin_layout Itemize
-Determine local flaws: Obviously, the security level of local utilities
- can not be determined from the point of view of the network.
- By running local security checks, Nessus will tell you if a user logged
- into the remote host can use an overflow in a suid binary to gain root
- privileges.
-\end_layout
-
-\begin_layout Itemize
-Determine flaws in disabled services: If a host has a vulnerable service
- installed, but it's not running at the time of the scan, a vulnerability
- will be missed.
- Having an unpatched disabled service is a potential security hazard - if
- the service is ever enabled in the future, it might be exploited.
-\end_layout
-
-\begin_layout Standard
-So traditional network-based scanners have their inherent limitations, which
- can now be overcomed thanks to this new feature.
-\end_layout
-
-\begin_layout Subsubsection
-Will Nessus recognize individually compiled and installed packages?
-\end_layout
-
-\begin_layout Standard
-If you e.g.
- compiled your DNS server by hand instead of using the system's one: Will
- Nessus see it ? No!
-\end_layout
-
-\begin_layout Standard
-Nessus sticks to the patches provided by your OS vendor.
- However, note that it usually is a good administrative practice to stick
- to your vendor packages, as it makes the upgrade of your system much easier.
-\end_layout
-
-\begin_layout Standard
-In the future, Nessus might be able to detect if a running server is not
- of the same version as the one installed by RPM (or any other packaging
- system) and may improve its output this way.
-\end_layout
-
-\begin_layout Subsubsection
-Why care about local security if there is no local user?
-\end_layout
-
-\begin_layout Standard
-E.g.
- why should one care if the web server has local overflows in suid binaries
- but there's no local user on it, apart from oneself?
-\end_layout
-
-\begin_layout Standard
-At the time this feature starts to be discussed, many people would object
- that they don't really care about local security because their server simply
- is a web server with no local users, therefore nobody can exploit a local
- vulnerability.
- The answer is a simple security practice:
-\series bold
-containment
-\series default
-.
- If your web server is vulnerable to a given flaw (be it a misconfiguration,
- a badly written PHP script, or an 0day in Apache), an attacker will be
- able to obtain a shell on your system.
- The question really is: do you want to make it easy for the attacker to
- gain super-user privileges and gain the full control of your system, or
- do you want to contain him to the privileges your web server is running
- with? (These privileges will prevent the attacker to modify your kernel,
- load a rogue kernel module, and generally will make it harder for him to
- cover his tracks).
- So
-\series bold
-local security really matters
-\series default
-, since it's your last line of defense.
-\end_layout
-
-\begin_layout Subsubsection
-How can enabling local security checks improve my scanning experience?
-\end_layout
-
-\begin_layout Standard
-Depending on how you use them, local security checks can dramatically improve
- your scanning experience:
-\end_layout
-
-\begin_layout Itemize
-By reducing false positives: it is not always possible to remotely determine
- if a given service is vulnerable to a given flaw or not (sometimes the
- only way to check for it is to actually crash the service, which is not
- an option in a production network).
- Sometimes, vendors do not upgrade a faulty product to the newest version
- but backport the fix instead (see Red Hat's statement about this), which
- also makes life more difficult for network-based scanners .
-\end_layout
-
-\begin_layout Itemize
-By speeding up the checks: if all you are interested in is to determine
- if all the patches have been installed on your remote hosts, you may want
- to only enable local security checks and dramatically reduce the time it
- takes to scan your systems.
- It only takes 6 seconds to find all the local flaws of a remote system
- (over a VPN link) whereas it takes over one minute to scan the same system
- entirely with all the network checks.
-\end_layout
-
-\begin_layout Itemize
-By scanning more often: Every network-based security scanner create the
- risk of crashing devices/services on your network.
- This is not specific to Nessus, this really is a hard fact about security
- scanning in general.
- The reason is simple: a scanner attempts to connect to all the services
- on the remote host, and some services (and TCP/IP stacks) out there are
- so poorly written that connecting to them too quickly or not sending them
- the exact data they are waiting for may crash them.
- No matter how gentle the scanner is, there is always a risk of crashing
- a custom application, a loaded server which is low on memory, and so on.
- This is especially true for embedded devices, most of which being designed
- without any consideration for security.
- There are scanners vendors out there who are trying to claim that they
- have reached
-\begin_inset Quotes eld
-\end_inset
-
-100% unintrusive scanning
-\begin_inset Quotes erd
-\end_inset
-
-, and this is simple not true.
- If a scanner interacts with a network service, there is always a risk for
- crashing it.
-\newline
-As a result, many people only scan once a month or once a quarter,
- even though security issues appear every day!
-\newline
-By only enabling local checks
- and disabling port scanners and every other plugins, Nessus Server will
- only connect to the SSH port of the remote hosts - no stress on the network,
- no bad surprises.
-\end_layout
-
-\begin_layout Standard
-So wether you administrate a small number of hosts or a huge number of systems,
- local security checks can definitely make your job much easier.
-\end_layout
-
-\begin_layout Subsubsection
-Does this feature slow down the scan?
-\end_layout
-
-\begin_layout Standard
-No.
- Nessus will minimize the number of SSH logins into the remote host, and
- will actually log in once, then load its knowledge base with various informatio
-n found on the remote host.
- Please view the source code of the plugin ssh_get_info.nasl for more details
- about what is gathered.
-\end_layout
-
-\begin_layout Subsubsection
-What are the caveats of this new feature?
-\end_layout
-
-\begin_layout Standard
-At this time, the following caveats are known:
-\end_layout
-
-\begin_layout Itemize
-Only SSHv2 is supported.
- You can not log into the remote host using SSHv1.
-\end_layout
-
-\begin_layout Itemize
-You have to use SSH public key authentication.
- It's slightly harder to deploy than a password, but it's much more secure.
-\end_layout
-
-\begin_layout Itemize
-This documentation only deals with OpenSSH.
-
-\end_layout
-
-\begin_layout Subsection
-Local Security Checks: How to enable
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status collapsed
-
-\begin_layout Standard
-What to do with this text - we can probably not just copy the referenced
- document, so have a URL instead or write a new text?:
-\end_layout
-
-\begin_layout Standard
-\begin_inset Quotes eld
-\end_inset
-
-As a reminder, if you are interested in Windows security checks please read
- this document instead.
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-The principle
-\end_layout
-
-\begin_layout Standard
-To enable local security checks, the idea is to:
-\end_layout
-
-\begin_layout Itemize
-Create a SSH private/public key pair for Nessus to use
-\end_layout
-
-\begin_layout Itemize
-Create a user account on every system for which you want to perform a local
- scan
-\end_layout
-
-\begin_layout Itemize
-Copy the SSH public key Nessus will use in the directory of the new user
-\end_layout
-
-\begin_layout Itemize
-Tell Nessus to use this SSH private and public keys and perform the scan
-
-\end_layout
-
-\begin_layout Standard
-As you can see this is pretty simple.
- Nessus can not use password authentication, otherwise it would be vulnerable
- to a man-in-the-middle attack when scanning the remote systems (we do not
- want to handle key management for the remote systems just yet).
-\end_layout
-
-\begin_layout Standard
-If you are not familiar with SSH public key authentication and understand
- what it does, you should consult the ssh documentation or corresponding
- publications.
-\end_layout
-
-\begin_layout Subsubsection
-Generating a SSH public key
-\end_layout
-
-\begin_layout Standard
-To generate a SSH public key, use ssh-keygen and save the key in a safe
- place.
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-$ ssh-keygen -t dsa
-\newline
-Generating public/private dsa key pair.
- Enter file in which to save the key (/Users/renaud/.ssh/id_dsa):
-\newline
-/home/renaud/Nes
-sus/ssh_key
-\newline
-Enter passphrase (empty for no passphrase):
-\newline
-Enter same passphrase
- again:
-\newline
-Your identification has been saved in /home/renaud/Nessus/ssh_key.
-\newline
-Your
- public key has been saved in /home/renaud/Nessus/ssh_key.pub.
-\newline
-The key fingerprint
- is: 06:4a:fd:76:ee:0f:d4:e6:4b:74:84:9a:99:e6:12:ea renaud at myth.local
-\newline
-
-\end_layout
-
-\begin_layout Standard
-As you can see in the example above, two files have been created:
-\end_layout
-
-\begin_layout Itemize
-/home/renaud/Nessus/ssh_key is the private SSH key.
- Do not transfer it on a system other than the one running your Nessus client.
-\end_layout
-
-\begin_layout Itemize
-/home/renaud/Nessus/ssh_key.pub is the public SSH key.
- You will copy this file on every system you want to scan with Nessus.
-
-\end_layout
-
-\begin_layout Standard
-When ssh-keygen asks you for a passphrase, you may want to enter return
- twice (ie: don't set any passphrase).
- It's safer to protect a key with a passphrase, however, given the way Nessus
- is implemented it will not buy you extra security, as the passphrase will
- have to circulate between your Nessus Client and the Nessus Server, and
- will be stored in clear text in your .nessusrc configuration file.
- If you feel safer, feel free to enter a passphrase.
-\end_layout
-
-\begin_layout Subsubsection
-Creating a user account and setting up the SSH key
-\end_layout
-
-\begin_layout Standard
-\align left
-On every platform you want to test, you want to create a new user account
- dedicated to Nessus.
- We will call this user nessus in this document, but you can set his name
- to any value.
- Once you created an account for the user (using adduser or any utility
- that the system provides you with), make sure that he has no valid password
- set (ie: when editing the file with 'vipw' make sure that the password
- field only contains a star):
-\end_layout
-
-\begin_layout Standard
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-# vipw
-\newline
-(...)
-\newline
-nessus:*:502:502::0:0:Nessus Test Account:/home/nessus:/bin/bash
-
-\newline
-(...)
-\family default
-\size default
-
-\newline
-
-\end_layout
-
-\begin_layout Standard
-Now that the user has been created, you simply need to copy the key to his
- home and set the correct permissions on the .ssh directory:
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-# mkdir ~nessus/.ssh
-\newline
-# mv ssh_key.pub ~nessus/.ssh/authorized_keys
-\newline
-# chown
- -R nessus:nessus ~nessus/.ssh/
-\newline
-# chmod 0600 ~nessus/.ssh/authorized_keys
-
-\newline
-# chmod 0700 ~nessus/.ssh/
-\family default
-\size default
-
-\newline
-
-\end_layout
-
-\begin_layout Subsubsection
-Setting up Nessus
-\end_layout
-
-\begin_layout Standard
-First, make sure that you are running Nessus 2.1.0 or newer and that it has
- been compiled with SSL support.
- You can do that by typing nessusd -d:
-\begin_inset VSpace defskip
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\align left
-
-\family typewriter
-\size scriptsize
-[root at myth Home]$ nessusd -d
-\newline
-This is Nessus 2.1.0 for Darwin 7.4.0
-\newline
-compiled
- with gcc version 3.3 20030304 (Apple Computer, Inc.
- build 1495)
-\newline
-Current setup :
-\newline
-nasl: 2.1.0
-\newline
-libnessus: 2.1.0 SSL support: enabled
-\newline
-
-\end_layout
-
-\begin_layout Standard
-Then start the OpenVAS-Client, and go to the
-\begin_inset Quotes eld
-\end_inset
-
-Credentials
-\begin_inset Quotes erd
-\end_inset
-
- section and set the SSH user name and SSH keys properly:
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status collapsed
-
-\begin_layout Standard
-TODO: screenshot like on http://www.nessus.org/doc/nessus_ssh_local.html
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Make sure not to mix the public key (keyname.pub) and the private one.
- Make sure that the option
-\begin_inset Quotes eld
-\end_inset
-
-enable dependencies
-\begin_inset Quotes erd
-\end_inset
-
- at runtime (in the plugins) section is checked, and run a scan against
- the remote host.
- The Nessus report should now tell you that login in was successful, and
- should show you all the missing patches on the remote system:
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status collapsed
-
-\begin_layout Standard
-TODO: Report excerpt like on http://www.nessus.org/doc/nessus_ssh_local.html
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Repeat the operation for every server for which you want to do a local scan,
- and you are ready to go!
-\end_layout
-
-\begin_layout Subsubsection
-Acknowledgements
-\end_layout
-
-\begin_layout Standard
-The SSH local checks functionality is a courtesy of:
-\end_layout
-
-\begin_layout Itemize
-Nicolas Pouvesle who wrote a lightweight SSH client implementation in NASL
-\end_layout
-
-\begin_layout Itemize
-Tenable Network Security.
- Tenable wrote over 1200 plugins performing local security audits.
-
-\end_layout
-
-\begin_layout Section
-Optimizing and Fine Tuning
-\end_layout
-
-\begin_layout Subsection
-Knowledge Base
-\end_layout
-
-\begin_layout Standard
-Knowledge Base saving allows you to not disturb the users of your network
- by doing daily portscans of a /24 network and to not waste the result of
- other tests.
-\end_layout
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
- filename images/mainwindow-kb-en.png
- scale 90
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-The Nessus Server as well as the Nessus Clients have a compile option to
- switch on Knowledge Base support.
- Usually that is the case but you may find servers or clients installations
- without this feature.
-\end_layout
-
-\begin_layout Standard
-In the OpenVAS-Client you find the configuration of the knowldege base on
- the page
-\begin_inset Quotes eld
-\end_inset
-
-KB
-\begin_inset Quotes erd
-\end_inset
-
- of the
-\begin_inset Quotes eld
-\end_inset
-
-Options
-\begin_inset Quotes erd
-\end_inset
-
- notebook (provided the respective client support the KB feature).
-\end_layout
-
-\begin_layout Subsubsection
-Introduction
-\end_layout
-
-\begin_layout Standard
-The knowledge base (KB) is the list of information gathered about a tested
- host.
- It contains the list of open ports, the operating system type of the host,
- and many more information.
- Its first purpose was to reduce the redundancy of the tests, so that a
- plugin A which finds a fact (for instance, a way to log into the remote
- FTP server) writes can share its result with the other plugins (for instance,
- a plugin which needs to log into the remote FTP server will look in the
- KB if there is a way to do so).
- After a test, the KB would be freed from memory, and would be rebuilt from
- scratch during the next test.
- The idea behind the saving of the knowledge base is to re-use it for another
- audit, to reduce the bandwidth consumption of a test.
- For instance, if you have not touched the configuration of your web server
- during the last 5 hours, it's very unlikely that a new port will be opened
- when you do a new port scan on it.
- So why waste your bandwidth and time re-doing a portscan when you could
- just re-use the result of the previous portscan you did against this host
- ? Saving the KB allows you to:
-\end_layout
-
-\begin_layout Itemize
-save bandwidth
-\end_layout
-
-\begin_layout Itemize
-save time
-\end_layout
-
-\begin_layout Itemize
-test the hosts of your network for new vulnerabilities only
-\end_layout
-
-\begin_layout Standard
-You can define a lifetime for the knowledge bases attached to the tested
- hosts.
- This lifetime can range between a few seconds to a hundred of years - you
- are free to configure it the way you want.
- The purpose of this section is to explain you how to enable and use this
- feature to increase your security by making more tests more often, thus
- having a day-to-day view of your network.
-
-\end_layout
-
-\begin_layout Subsubsection
-Using the KB saving
-\end_layout
-
-\begin_layout Standard
-If you want the knowledge bases to be saved on the Nessus Server side, you
- must enable the option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Enable KB saving
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- in the client:
-\end_layout
-
-\begin_layout Standard
-This option enables all the knowledge base saving, and by enabling this
- checkbox, you know that all the information collected about the remote
- hosts will be saved on disk.
- If you enable this option only, then the data gathered from the hosts you
- are testing for will be saved on disk, and that's all.
- That is, nessusd will not use it when you test the same host again.
- If you want to take advantage of it for the rest of your tests, continue
- to read.
-\end_layout
-
-\begin_layout Standard
-Technically speaking, each knowledge base is saved on the remote host as
- a different file for each tested host.
- A database may be pluggable here in the future, but at this time, this
- is fine.
- The files are located in
-\begin_inset Quotes eld
-\end_inset
-
-/usr/local/var/nessus/username/kbs/
-\begin_inset Quotes erd
-\end_inset
-
- where username is the Nessus Server login name in use.
-\end_layout
-
-\begin_layout Subsubsection
-Reducing the hosts tested to (re)populate the knowledge bases
-\end_layout
-
-\begin_layout Standard
-When
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Enable KB saving
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- is set, then it is possible to reduce the set of tested hosts to populate
- the knowledge bases of the current user.
- You may want to just test the hosts that already have a knowledge base
- attached to, or at the opposite, you may want to only tests the hosts that
- have no, or an outdated, knowledge base, so that the set of knowledge bases
- is up-to-date and complete.
- That's where the three options
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Test all hosts
-\series default
-",
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Only test hosts that have been tested in the past
-\series default
-" and
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Only tests hosts that have never been tested in the past
-\series default
-" are handy.
-\end_layout
-
-\begin_layout Itemize
-If
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Test all hosts
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- is set, then all the hosts present in the
-\begin_inset Quotes eld
-\end_inset
-
-Target
-\begin_inset Quotes erd
-\end_inset
-
- field of the target selection panel will be tested; that is, no filtering
- will be done, and everything will be tested as it used to be.
-
-\end_layout
-
-\begin_layout Itemize
-If you set the option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Only test hosts that have been tested in the past
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
-, only the hosts to which an up-to-date knowledge base is attached will
- be tested.
- This allows you to make sure that, for instance, no port scan will be done
- against hosts that have never been tested in your selection, so you are
- sure that network noise will be low.
-\end_layout
-
-\begin_layout Itemize
-Last but not least, the option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Only test hosts that have never been tested in the past
-\begin_inset Quotes erd
-\end_inset
-
-
-\series default
- is set, then only the hosts that have no knowledge base, or an outdated
- one, will be tested, and will be given a fresh new KB.
-
-\end_layout
-
-\begin_layout Standard
-These three options allow you to do what you want :
-\end_layout
-
-\begin_layout Itemize
-test everything
-\end_layout
-
-\begin_layout Itemize
-make sure that no noise will be generated during this test
-\end_layout
-
-\begin_layout Itemize
-populate the set of knowledge bases
-\end_layout
-
-\begin_layout Subsubsection
-Re-using the knowledge base between multiple tests
-\end_layout
-
-\begin_layout Standard
-Re-using a knowledge base saved in the past may be dangerous, suppose for
- instance that the host you have audited yesterday was broken into during
- the night, and that the attacker left a root shell open on a port that
- used to be closed.
- If you re-use the knowledge base, then you will miss this fact.
- On the other hand, on a well-secured network, you may want to re-use a
- previously saved KB to save time and test a restricted set of new security
- checks against the host.
-\end_layout
-
-\begin_layout Standard
-If you enable the option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-Reuse the knowledge bases about the hosts for the test
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
-, then the older knowledge base will be reloaded in memory, and Nessus Server
- will make an active use of it.
- You can control what Nessus Server will make of it using the four following
- options:
-\end_layout
-
-\begin_layout Standard
-...
-\end_layout
-
-\begin_layout Standard
-If
-\begin_inset Quotes eld
-\end_inset
-
-Do not execute scanners that have already been executed
-\begin_inset Quotes erd
-\end_inset
-
- is set, then scanners you used in an older test won't be used again.
- The same for the other three options.
- If you just want to execute the new checks you gathered using the command
-
-\begin_inset Quotes eld
-\end_inset
-
-nessus-update-plugins
-\begin_inset Quotes erd
-\end_inset
-
-, then it is suggested you enable all these options.
- If you just want to reduce the noise of your network and don't do any port
- scan, just enable the first option.
- And so on...
-\end_layout
-
-\begin_layout Subsubsection
-Defining the meaning of up-to-date
-\end_layout
-
-\begin_layout Standard
-Throughout this section, it is said that a KB can be declared as being up-to-dat
-e or outdated.
- What is meant by this is what you want.
- Each time a KB is created, it is attributed a date tag.
- The option
-\begin_inset Quotes eld
-\end_inset
-
-
-\series bold
-max age of a saved KB
-\series default
-
-\begin_inset Quotes erd
-\end_inset
-
- defines, in seconds, the amount of time after which a KB is declared as
- being obsolete and will be regenerated from scratch.
-\end_layout
-
-\begin_layout Standard
-The default value is 864000 (10 days), but you are free to lower this to
- 3600 (one hour), or less, or at the opposite, raise this value to whatever
- you want.
-
-\end_layout
-
-\end_body
-\end_document
From scm-commit at wald.intevation.org Fri Aug 1 20:43:53 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 20:43:53 +0200 (CEST)
Subject: [Openvas-commits] r1095 - trunk/openvas-compendium
Message-ID: <20080801184353.E68E14072E@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 20:43:53 +0200 (Fri, 01 Aug 2008)
New Revision: 1095
Added:
trunk/openvas-compendium/images/
Modified:
trunk/openvas-compendium/ChangeLog
Log:
* images/cc-by-sa-logo.png, images/mainwindow-plugins-en.eps,
images/cc-by-sa-logo.eps, images/preferences-dlg-en.png,
images/mainwindow-targetselection-en.png,
images/mainwindow-credentials-en.png,
images/preferences-dlg-en.eps, images/mainwindow-pluginprefs-en.png,
images/OpenVAS-Structure.png, images/openvas-logo.png,
images/mainwindow-targetselection-en.eps,
images/mainwindow-credentials-en.eps, images/mainwindow-pluginprefs-en.eps,
images/openvas-logo.eps, images/OpenVAS-Structure.eps,
images/mainwindow-en.png, images/mainwindow-en.eps,
images/authentication-dlg-en.png, images/mainwindow-report-en.png,
images/authentication-dlg-en.eps, images/mainwindow-report-en.eps,
images/mainwindow-plugins-en.png: New. Moved here from doc module.
Modified: trunk/openvas-compendium/ChangeLog
===================================================================
--- trunk/openvas-compendium/ChangeLog 2008-08-01 18:23:10 UTC (rev 1094)
+++ trunk/openvas-compendium/ChangeLog 2008-08-01 18:43:53 UTC (rev 1095)
@@ -1,5 +1,21 @@
2008-08-01 Jan-Oliver Wagner
+ * images/cc-by-sa-logo.png, images/mainwindow-plugins-en.eps,
+ images/cc-by-sa-logo.eps, images/preferences-dlg-en.png,
+ images/mainwindow-targetselection-en.png,
+ images/mainwindow-credentials-en.png,
+ images/preferences-dlg-en.eps, images/mainwindow-pluginprefs-en.png,
+ images/OpenVAS-Structure.png, images/openvas-logo.png,
+ images/mainwindow-targetselection-en.eps,
+ images/mainwindow-credentials-en.eps, images/mainwindow-pluginprefs-en.eps,
+ images/openvas-logo.eps, images/OpenVAS-Structure.eps,
+ images/mainwindow-en.png, images/mainwindow-en.eps,
+ images/authentication-dlg-en.png, images/mainwindow-report-en.png,
+ images/authentication-dlg-en.eps, images/mainwindow-report-en.eps,
+ images/mainwindow-plugins-en.png: New. Moved here from doc module.
+
+2008-08-01 Jan-Oliver Wagner
+
Removing the old english and german manual and associated files.
* images/mainwindow-kb-de.png, images/mainwindow-targetselection-de.png,
Copied: trunk/openvas-compendium/images (from rev 1090, trunk/doc/openvas-compendium/images)
From scm-commit at wald.intevation.org Fri Aug 1 20:47:00 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 20:47:00 +0200 (CEST)
Subject: [Openvas-commits] r1096 - trunk/doc/openvas-compendium
Message-ID: <20080801184700.88F124072E@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 20:47:00 +0200 (Fri, 01 Aug 2008)
New Revision: 1096
Removed:
trunk/doc/openvas-compendium/html/
trunk/doc/openvas-compendium/images/
Log:
removed empty directories.
From scm-commit at wald.intevation.org Fri Aug 1 21:45:21 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Fri, 1 Aug 2008 21:45:21 +0200 (CEST)
Subject: [Openvas-commits] r1097 - trunk/openvas-compendium
Message-ID: <20080801194521.4F80840735@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-01 21:45:20 +0200 (Fri, 01 Aug 2008)
New Revision: 1097
Removed:
trunk/openvas-compendium/OpenVAS-logo.png
Modified:
trunk/openvas-compendium/COPYING
trunk/openvas-compendium/ChangeLog
trunk/openvas-compendium/Makefile
trunk/openvas-compendium/README
trunk/openvas-compendium/VERSION
trunk/openvas-compendium/openvas-compendium.tex
Log:
* OpenVAS-logo.png: Removed.
* VERSION: reset version to 0.1.0.SVN for a new start
of the compendium.
* README: Rewrote for Compendium.
* Makefile: Merged the compendium Makefile of doc module
into present Makefile
* COPYING: Switched to CC by SA.
* openvas-compendium.tex: Removed the GPL notice which
was a left over in the comment header.
Modified: trunk/openvas-compendium/COPYING
===================================================================
--- trunk/openvas-compendium/COPYING 2008-08-01 18:47:00 UTC (rev 1096)
+++ trunk/openvas-compendium/COPYING 2008-08-01 19:45:20 UTC (rev 1097)
@@ -1,340 +1,5 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
+This work is licensed under the
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
+Creative Commons License Attribution-ShareAlike 3.0 Unported
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
- Copyright (C)
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- , 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
+http://creativecommons.org/licenses/by-sa/3.0/deed.en
Modified: trunk/openvas-compendium/ChangeLog
===================================================================
--- trunk/openvas-compendium/ChangeLog 2008-08-01 18:47:00 UTC (rev 1096)
+++ trunk/openvas-compendium/ChangeLog 2008-08-01 19:45:20 UTC (rev 1097)
@@ -1,5 +1,22 @@
2008-08-01 Jan-Oliver Wagner
+ * OpenVAS-logo.png: Removed.
+
+ * VERSION: reset version to 0.1.0.SVN for a new start
+ of the compendium.
+
+ * README: Rewrote for Compendium.
+
+ * Makefile: Merged the compendium Makefile of doc module
+ into present Makefile
+
+ * COPYING: Switched to CC by SA.
+
+ * openvas-compendium.tex: Removed the GPL notice which
+ was a left over in the comment header.
+
+2008-08-01 Jan-Oliver Wagner
+
* images/cc-by-sa-logo.png, images/mainwindow-plugins-en.eps,
images/cc-by-sa-logo.eps, images/preferences-dlg-en.png,
images/mainwindow-targetselection-en.png,
Modified: trunk/openvas-compendium/Makefile
===================================================================
--- trunk/openvas-compendium/Makefile 2008-08-01 18:47:00 UTC (rev 1096)
+++ trunk/openvas-compendium/Makefile 2008-08-01 19:45:20 UTC (rev 1097)
@@ -2,51 +2,46 @@
INSTALL_DIR=/usr/bin/install -c -d
INSTALL=/usr/bin/install -c
-# TODO: html is commented out, because the lyx output is not yet prepared
-# to work with hyperlatex
-all: users-manual.pdf users-manual-de.pdf
-#all: users-manual.pdf users-manual-de.pdf users-manual.html users-manual-de.html
+latexfile = openvas-compendium
+TEX = latex
+HYPERLATEX = hyperlatex
+PS = dvips
+PDF = pdflatex
-LYX=lyx
+all: pdf
-%.pdf: %.lyx
- $(LYX) -e pdf $< && $(LYX) -e pdf $<
+dvi:
+ while ($(TEX) $(latexfile) ; \
+ grep -q "Rerun to get cross" $(latexfile).log ) do true ; \
+ done
-%.tex: %.lyx
- $(LYX) -e latex $<
+hyperhtml:
+ $(HYPERLATEX) $(latexfile)
-%.dvi: %.tex
- latex $@
+ps: dvi
+ $(PS) $(latexfile).dvi
-%.ps: %.dvi
- dvips $@ -o $<
+pdf:
+ while ($(PDF) $(latexfile) ; \
+ grep -q "Rerun to get cross" $(latexfile).log ) do true ; \
+ done
-%.html: %.tex
- hyperlatex $<
-
-%.rtf: %.tex
- latex2rtf -C latin1 -l $<
-
-install: all
+install: pdf hyperhtml
test -d ${DOC_DIR} || $(INSTALL_DIR) -m 755 ${DOC_DIR}
- # test -d ${DOC_DIR}/html/ || $(INSTALL_DIR) -m 755 ${DOC_DIR}/html
- $(INSTALL) -m 644 users-manual.pdf ${DOC_DIR}/
- $(INSTALL) -m 644 users-manual-de.pdf ${DOC_DIR}/
- # The following makes only sense if it is solved to have
- # the html with images there as well.
- # $(INSTALL) -m 644 users-manual.html ${DOC_DIR}/html
- # $(INSTALL) -m 644 users-manual-de.html ${DOC_DIR}/html
+ $(INSTALL) -m 644 openvas-compendium.pdf ${DOC_DIR}/
+ test -d ${DOC_DIR}/html/ || $(INSTALL_DIR) -m 755 ${DOC_DIR}/html
+ $(INSTALL) -m 644 html/* ${DOC_DIR}/html
clean:
- rm -rf *.aux *.toc *.dvi *.ps *.log *.pdf *.html
+ rm -rf *.aux *.toc *.dvi *.ps *.log *.pdf html/
distclean: clean
dist:
version="`cat VERSION`"; \
- rm -rf openvas-manual-$${version}* ; \
- mkdir openvas-manual-$${version} ; \
- tar cf openvas-manual-$${version}/x.tar `cat MANIFEST`; \
- ( cd openvas-manual-$${version} ; tar xf x.tar ; rm -f x.tar ) ; \
- tar cf openvas-manual-$${version}.tar openvas-manual-$${version} ; \
- gzip -9 openvas-manual-$${version}.tar
+ rm -rf openvas-compendium-$${version}* ; \
+ mkdir openvas-compendium-$${version} ; \
+ tar cf openvas-compendium-$${version}/x.tar `cat MANIFEST`; \
+ ( cd openvas-compendium-$${version} ; tar xf x.tar ; rm -f x.tar ) ; \
+ tar cf openvas-compendium-$${version}.tar openvas-compendium-$${version} ; \
+ gzip -9 openvas-compendium-$${version}.tar
Deleted: trunk/openvas-compendium/OpenVAS-logo.png
===================================================================
(Binary files differ)
Modified: trunk/openvas-compendium/README
===================================================================
--- trunk/openvas-compendium/README 2008-08-01 18:47:00 UTC (rev 1096)
+++ trunk/openvas-compendium/README 2008-08-01 19:45:20 UTC (rev 1097)
@@ -1,33 +1,17 @@
-OpenVAS Manual
---------------
+OpenVAS Compendium
+------------------
-This manual origins from OpenVAS-Client which again origins
-from NessusClient.
+The compendium uses the LaTeX format.
+Thus you need to have LaTeX installed
+to build actual PDF file.
-It has been separated from the OpenVAS Client package
-in order to extend it to be a overall OpenVAS manual.
+To build the PDF file type:
-Build and install:
+$ make
-So far, no autotools are applied, so some hand work is needed:
+To build a HTML version type:
-1. You need to have lyx installed.
+$ make hyperhtml
-2. Just type "make". This will build PDF files for the englisch
- and german manual.
-
-3. Before Installing you have to adjust three variable in "Makefile":
-
- * INSTALL_DIR: Path to programm "install" and apropriate command
- line parameters to install a directory. Usually the default should
- be OK.
-
- * INSTALL: Same as INSTALL_DIR, but for files.
-
- * DOC_DIR: The documentation directory where the PDFs are placed.
- This should be the same location as OpenVAS Client expects.
- The default is OK if you configured OpenVAS-Client with default prefix.
- If you specified another prefix, you need to change DOC_DIR
- accordingly.
-
-4. Run "make install".
+(this will create a directory html with
+many .html files and images.)
Modified: trunk/openvas-compendium/VERSION
===================================================================
--- trunk/openvas-compendium/VERSION 2008-08-01 18:47:00 UTC (rev 1096)
+++ trunk/openvas-compendium/VERSION 2008-08-01 19:45:20 UTC (rev 1097)
@@ -1 +1 @@
-0.9.1.SVN
+0.1.0.SVN
Modified: trunk/openvas-compendium/openvas-compendium.tex
===================================================================
--- trunk/openvas-compendium/openvas-compendium.tex 2008-08-01 18:47:00 UTC (rev 1096)
+++ trunk/openvas-compendium/openvas-compendium.tex 2008-08-01 19:45:20 UTC (rev 1097)
@@ -11,19 +11,6 @@
% Copyright:
% Copyright (C) 2008 Intevation GmbH
% Copyright (C) 2008 Tim Brown
-%
-% This program is free software; you can redistribute it and/or modify
-% it under the terms of the GNU General Public License version 2,
-% as published by the Free Software Foundation
-%
-% This program is distributed in the hope that it will be useful,
-% but WITHOUT ANY WARRANTY; without even the implied warranty of
-% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-% GNU General Public License for more details.
-%
-% You should have received a copy of the GNU General Public License
-% along with this program; if not, write to the Free Software
-% Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
\documentclass[a4paper,11pt,twoside,titlepage,dvips]{scrbook}
\usepackage{hyperlatex}
From scm-commit at wald.intevation.org Mon Aug 4 10:41:01 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Mon, 4 Aug 2008 10:41:01 +0200 (CEST)
Subject: [Openvas-commits] r1098 - trunk/openvas-compendium
Message-ID: <20080804084101.C559A40700@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-04 10:41:00 +0200 (Mon, 04 Aug 2008)
New Revision: 1098
Modified:
trunk/openvas-compendium/CHANGES
trunk/openvas-compendium/ChangeLog
trunk/openvas-compendium/MANIFEST
trunk/openvas-compendium/VERSION
trunk/openvas-compendium/openvas-compendium.tex
Log:
Doing the 0.1.0 release.
* openvas-compendium.tex: Set version, fix a typo.
* VERSION: Set to 0.1.0.
* CHANGES: Updated.
* MANIFEST: Updated.
Modified: trunk/openvas-compendium/CHANGES
===================================================================
--- trunk/openvas-compendium/CHANGES 2008-08-01 19:45:20 UTC (rev 1097)
+++ trunk/openvas-compendium/CHANGES 2008-08-04 08:41:00 UTC (rev 1098)
@@ -1,17 +1,10 @@
-openvas-manual 0.9.0 (2007-07-31)
+openvas-compendium 0.1.0 (2008-08-03)
-The first initial release of openvas-manual
-after the fork of OpenVAS-Client from NessusClient 1.x
-and the separation out of OpenVAS-Client into
-a module of its own.
+The first initial release of openvas-compendium.
+The Compendium replaces the previous openvas-manual.
Main changes are:
-* only some slight hints in english and german manual
- to make clear this contains a lot of outdated information.
-* only manual specification of prefix for installation destination
- because "configure" environment not set up yet.
-* no html version is built, because the previously used
- converter latex2html isn't Free Software and the build
- process is not yet fully adjusted for the new converter
- hyperlatex.
+* Restart of the main documentation for OpenVAS.
+* The new document is based on LateX instead of lyx.
+* Siwtch to CC by SA license.
Modified: trunk/openvas-compendium/ChangeLog
===================================================================
--- trunk/openvas-compendium/ChangeLog 2008-08-01 19:45:20 UTC (rev 1097)
+++ trunk/openvas-compendium/ChangeLog 2008-08-04 08:41:00 UTC (rev 1098)
@@ -1,3 +1,15 @@
+2008-08-03 Jan-Oliver Wagner
+
+ Doing the 0.1.0 release.
+
+ * openvas-compendium.tex: Set version, fix a typo.
+
+ * VERSION: Set to 0.1.0.
+
+ * CHANGES: Updated.
+
+ * MANIFEST: Updated.
+
2008-08-01 Jan-Oliver Wagner
* OpenVAS-logo.png: Removed.
Modified: trunk/openvas-compendium/MANIFEST
===================================================================
--- trunk/openvas-compendium/MANIFEST 2008-08-01 19:45:20 UTC (rev 1097)
+++ trunk/openvas-compendium/MANIFEST 2008-08-04 08:41:00 UTC (rev 1098)
@@ -1,27 +1,30 @@
+CHANGES
+COPYING
ChangeLog
-COPYING
-images/authentication-dlg-de.png
+MANIFEST
+Makefile
+README
+VERSION
+images/OpenVAS-Structure.eps
+images/OpenVAS-Structure.png
+images/authentication-dlg-en.eps
images/authentication-dlg-en.png
-images/mainwindow-credentials-de.png
+images/cc-by-sa-logo.eps
+images/cc-by-sa-logo.png
+images/mainwindow-credentials-en.eps
images/mainwindow-credentials-en.png
-images/mainwindow-de.png
+images/mainwindow-en.eps
images/mainwindow-en.png
-images/mainwindow-kb-de.png
-images/mainwindow-kb-en.png
-images/mainwindow-pluginprefs-de.png
+images/mainwindow-pluginprefs-en.eps
images/mainwindow-pluginprefs-en.png
-images/mainwindow-plugins-de.png
+images/mainwindow-plugins-en.eps
images/mainwindow-plugins-en.png
-images/mainwindow-report-de.png
+images/mainwindow-report-en.eps
images/mainwindow-report-en.png
-images/mainwindow-targetselection-de.png
+images/mainwindow-targetselection-en.eps
images/mainwindow-targetselection-en.png
-images/preferences-dlg-de.png
+images/openvas-logo.eps
+images/openvas-logo.png
+images/preferences-dlg-en.eps
images/preferences-dlg-en.png
-Makefile
-MANIFEST
-OpenVAS-logo.png
-README
-users-manual-de.lyx
-users-manual.lyx
-VERSION
+openvas-compendium.tex
Modified: trunk/openvas-compendium/VERSION
===================================================================
--- trunk/openvas-compendium/VERSION 2008-08-01 19:45:20 UTC (rev 1097)
+++ trunk/openvas-compendium/VERSION 2008-08-04 08:41:00 UTC (rev 1098)
@@ -1 +1 @@
-0.1.0.SVN
+0.1.0
Modified: trunk/openvas-compendium/openvas-compendium.tex
===================================================================
--- trunk/openvas-compendium/openvas-compendium.tex 2008-08-01 19:45:20 UTC (rev 1097)
+++ trunk/openvas-compendium/openvas-compendium.tex 2008-08-04 08:41:00 UTC (rev 1098)
@@ -48,8 +48,8 @@
\usepackage{hyperref}
-\newcommand{\compendiumversion}{0.1.0-svn}
-\newcommand{\compendiumdate}{20080708}
+\newcommand{\compendiumversion}{0.1.0}
+\newcommand{\compendiumdate}{20080802}
\newcommand{\compendiumauthor}[1]{\begin{small}(by {#1})\end{small}}
\newcommand{\hyperurl}[1]{\htmlonly{\xml{p}\small
\xlink{{#1}}{{#1}}\xml{br}}\texonly{\small{#1}}}
@@ -1969,7 +1969,7 @@
\chapter{Developers Guide for NASL scripts}
-\section{Basic Structure of a NASL NASL Scripts}
+\section{Basic Structure of NASL Scripts}
\compendiumauthor{Tim Brown}
From scm-commit at wald.intevation.org Mon Aug 4 10:42:12 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Mon, 4 Aug 2008 10:42:12 +0200 (CEST)
Subject: [Openvas-commits] r1099 - tags
Message-ID: <20080804084212.4BB9940700@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-04 10:42:11 +0200 (Mon, 04 Aug 2008)
New Revision: 1099
Added:
tags/openvas-compendium-release-0.1.0/
Log:
Tagging the 0.1.0 release of openvas-compendium
Copied: tags/openvas-compendium-release-0.1.0 (from rev 1098, trunk/openvas-compendium)
From scm-commit at wald.intevation.org Mon Aug 4 10:44:55 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Mon, 4 Aug 2008 10:44:55 +0200 (CEST)
Subject: [Openvas-commits] r1100 - trunk/openvas-compendium
Message-ID: <20080804084455.79AE040700@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-04 10:44:55 +0200 (Mon, 04 Aug 2008)
New Revision: 1100
Modified:
trunk/openvas-compendium/ChangeLog
trunk/openvas-compendium/VERSION
trunk/openvas-compendium/openvas-compendium.tex
Log:
Post-release version bump.
* VERSION: Set to 0.2.0.SVN.
* openvas-compedium.tex: Version set to 0.2.0.SVN.
Modified: trunk/openvas-compendium/ChangeLog
===================================================================
--- trunk/openvas-compendium/ChangeLog 2008-08-04 08:42:11 UTC (rev 1099)
+++ trunk/openvas-compendium/ChangeLog 2008-08-04 08:44:55 UTC (rev 1100)
@@ -1,5 +1,13 @@
-2008-08-03 Jan-Oliver Wagner
+2008-08-04 Jan-Oliver Wagner
+ Post-release version bump.
+
+ * VERSION: Set to 0.2.0.SVN.
+
+ * openvas-compedium.tex: Version set to 0.2.0.SVN.
+
+2008-08-04 Jan-Oliver Wagner
+
Doing the 0.1.0 release.
* openvas-compendium.tex: Set version, fix a typo.
Modified: trunk/openvas-compendium/VERSION
===================================================================
--- trunk/openvas-compendium/VERSION 2008-08-04 08:42:11 UTC (rev 1099)
+++ trunk/openvas-compendium/VERSION 2008-08-04 08:44:55 UTC (rev 1100)
@@ -1 +1 @@
-0.1.0
+0.2.0.SVN
Modified: trunk/openvas-compendium/openvas-compendium.tex
===================================================================
--- trunk/openvas-compendium/openvas-compendium.tex 2008-08-04 08:42:11 UTC (rev 1099)
+++ trunk/openvas-compendium/openvas-compendium.tex 2008-08-04 08:44:55 UTC (rev 1100)
@@ -48,7 +48,7 @@
\usepackage{hyperref}
-\newcommand{\compendiumversion}{0.1.0}
+\newcommand{\compendiumversion}{0.2.0.SVN}
\newcommand{\compendiumdate}{20080802}
\newcommand{\compendiumauthor}[1]{\begin{small}(by {#1})\end{small}}
\newcommand{\hyperurl}[1]{\htmlonly{\xml{p}\small
From scm-commit at wald.intevation.org Mon Aug 4 10:57:08 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Mon, 4 Aug 2008 10:57:08 +0200 (CEST)
Subject: [Openvas-commits] r1101 - trunk/doc/website
Message-ID: <20080804085708.71BA340700@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-04 10:57:08 +0200 (Mon, 04 Aug 2008)
New Revision: 1101
Modified:
trunk/doc/website/template_header.m4
Log:
Added OpenVAS Compendium to download box.
Modified: trunk/doc/website/template_header.m4
===================================================================
--- trunk/doc/website/template_header.m4 2008-08-04 08:44:55 UTC (rev 1100)
+++ trunk/doc/website/template_header.m4 2008-08-04 08:57:08 UTC (rev 1101)
@@ -135,6 +135,11 @@
openvas-server 1.0.1
openvas-plugins 1.0.2
+
+
+ Documentation:
+ OpenVAS Compendium 0.1.0
+
From scm-commit at wald.intevation.org Mon Aug 4 11:16:50 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Mon, 4 Aug 2008 11:16:50 +0200 (CEST)
Subject: [Openvas-commits] r1102 - trunk/doc
Message-ID: <20080804091650.27DF840730@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-04 11:16:50 +0200 (Mon, 04 Aug 2008)
New Revision: 1102
Removed:
trunk/doc/openvas-compendium/
Log:
Removing last elements of openvas-compendium which is now a main module of its own.
From scm-commit at wald.intevation.org Wed Aug 6 11:41:14 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Wed, 6 Aug 2008 11:41:14 +0200 (CEST)
Subject: [Openvas-commits] r1103 - trunk/openvas-libnasl/nasl
Message-ID: <20080806094114.7A0A24069B@pyrosoma.intevation.org>
Author: chandra
Date: 2008-08-06 11:41:14 +0200 (Wed, 06 Aug 2008)
New Revision: 1103
Modified:
trunk/openvas-libnasl/nasl/nasl_socket.c
Log:
Fixed an issue with UDP socket close in nasl_close_socket
Modified: trunk/openvas-libnasl/nasl/nasl_socket.c
===================================================================
--- trunk/openvas-libnasl/nasl/nasl_socket.c 2008-08-04 09:16:50 UTC (rev 1102)
+++ trunk/openvas-libnasl/nasl/nasl_socket.c 2008-08-06 09:41:14 UTC (rev 1103)
@@ -612,7 +612,7 @@
int e;
soc = get_int_var_by_num(lexic, 0, -1);
- if(soc <= 4)
+ if(soc < 4)
{
nasl_perror(lexic, "close(): invalid argument\n");
return NULL;
From scm-commit at wald.intevation.org Wed Aug 6 12:13:15 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Wed, 6 Aug 2008 12:13:15 +0200 (CEST)
Subject: [Openvas-commits] r1104 - branches
Message-ID: <20080806101315.4591D406B0@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-06 12:13:15 +0200 (Wed, 06 Aug 2008)
New Revision: 1104
Added:
branches/openvas-client-1-0/
Log:
Created 1-0 branch for openvas-client.
Copied: branches/openvas-client-1-0 (from rev 1103, trunk/openvas-client)
From scm-commit at wald.intevation.org Wed Aug 6 12:16:44 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Wed, 6 Aug 2008 12:16:44 +0200 (CEST)
Subject: [Openvas-commits] r1105 - branches/openvas-client-1-0
Message-ID: <20080806101644.5B905406B0@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-06 12:16:44 +0200 (Wed, 06 Aug 2008)
New Revision: 1105
Modified:
branches/openvas-client-1-0/ChangeLog
Log:
Note on branch in ChangeLog.
Modified: branches/openvas-client-1-0/ChangeLog
===================================================================
--- branches/openvas-client-1-0/ChangeLog 2008-08-06 10:13:15 UTC (rev 1104)
+++ branches/openvas-client-1-0/ChangeLog 2008-08-06 10:16:44 UTC (rev 1105)
@@ -1,3 +1,9 @@
+2008-08-06 Jan-Oliver Wagner
+
+ This module is branched for 1-0 stable development.
+ The present ChangeLog file only covers changes within this
+ branch.
+
2008-07-31 Vlatko Kosturjak
* po/hr.po: New. Initial Croatian translation of OpenVAS client.
From scm-commit at wald.intevation.org Wed Aug 6 12:52:16 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Wed, 6 Aug 2008 12:52:16 +0200 (CEST)
Subject: [Openvas-commits] r1107 - trunk/doc/website
Message-ID: <20080806105216.AE999406A7@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-06 12:52:16 +0200 (Wed, 06 Aug 2008)
New Revision: 1107
Modified:
trunk/doc/website/openvas-client.htm4
trunk/doc/website/openvas-cr-14.htm4
Log:
Notes on branched 1.0 development of openvas-client.
Modified: trunk/doc/website/openvas-client.htm4
===================================================================
--- trunk/doc/website/openvas-client.htm4 2008-08-06 10:43:35 UTC (rev 1106)
+++ trunk/doc/website/openvas-client.htm4 2008-08-06 10:52:16 UTC (rev 1107)
@@ -270,19 +270,29 @@
Most current state of development (directly from the source code management system)
+After checking out the code,
+change to the new directory and follow the instructions in the
+README file.
+
+
+Stable 1.0 branch
+
+
You need subversion to retrieve the code:
-$ svn checkout https://svn.wald.intevation.org/svn/openvas/trunk/openvas-client
+$ svn checkout https://svn.wald.intevation.org/svn/openvas/branches/openvas-client-1-0
+Current state of development
+
-Change to the new directory and follow the instructions in the README file.
+
+$ svn checkout https://svn.wald.intevation.org/svn/openvas/trunk/openvas-client
+
@@ -290,3 +300,4 @@
be aware that you are using a development state that may be incomplete and
unstable and should not be used in production environments.
+
Modified: trunk/doc/website/openvas-cr-14.htm4
===================================================================
--- trunk/doc/website/openvas-cr-14.htm4 2008-08-06 10:43:35 UTC (rev 1106)
+++ trunk/doc/website/openvas-cr-14.htm4 2008-08-06 10:52:16 UTC (rev 1107)
@@ -28,7 +28,7 @@
PAGE_START
OpenVAS Change Request #14: OpenVAS-Client: Remove source code copy of gdchart and gd
-Status: Voted +5.
+Status: Voted +5. gdchart and gd removed in SVN trunk.
Purpose
From scm-commit at wald.intevation.org Wed Aug 6 12:43:38 2008
From: scm-commit at wald.intevation.org (scm-commit@wald.intevation.org)
Date: Wed, 6 Aug 2008 12:43:38 +0200 (CEST)
Subject: [Openvas-commits] r1106 - in trunk/openvas-client: . include nessus
Message-ID: <20080806104338.02FFC406A7@pyrosoma.intevation.org>
Author: jan
Date: 2008-08-06 12:43:35 +0200 (Wed, 06 Aug 2008)
New Revision: 1106
Removed:
trunk/openvas-client/nessus/gdchart0.94b/
Modified:
trunk/openvas-client/ChangeLog
trunk/openvas-client/MANIFEST
trunk/openvas-client/configure
trunk/openvas-client/configure.in
trunk/openvas-client/include/config.h.in
trunk/openvas-client/nessus.tmpl.in
trunk/openvas-client/nessus/Makefile
trunk/openvas-client/nessus/cli.c
trunk/openvas-client/nessus/globals.h
trunk/openvas-client/nessus/html_graph_output.c
trunk/openvas-client/nessus/nessus.c
trunk/openvas-client/nessus/report_save.c
Log:
Removing gd and gdchart according to OpenVAS Change Request #14:
http://www.openvas.org/openvas-cr-14.html
First part of patch.
* configure.in: Added check for gdchart
* nessus.tmpl.in: Add handling of GDC_LIB.
* include/config.h.in: Add conditional HAVE_GDCHART.
* nessus/Makefile: Removed any handling of gdchart modules.
* nessus/html_graph_output.c: Added HAVE_GDCHART conditional and
replaced direct includes by generic ones for gdchart.
* nessus/cli.c (cli_args_output): Replaced _NO_PIES conditional by
HAVE_GDCHART.
* nessus/report_save.c (file_save_ok_callback, report_save_cb):
Replaced _NO_PIES and _NOPIE conditionals by HAVE_GDCHART.
* nessus/nessus.c (main): Added HAVE_GDCHART conditional.
* nessus/globals.h: Removed already-commented-out definition of _NO_PIES.
* gdchart0.94b/gdc_samp1.c, nessus/gdchart0.94b/NOTES-092b.txt,
nessus/gdchart0.94b/gdc_samp2.c, nessus/gdchart0.94b/NOTES-093b.txt,
nessus/gdchart0.94b/gdcpie.h, nessus/gdchart0.94b/NOTES-094b.txt,
nessus/gdchart0.94b/gdc.h, nessus/gdchart0.94b/gdc_pie_samp.c,
nessus/gdchart0.94b/gdchart.c, nessus/gdchart0.94b/gdchart.h,
nessus/gdchart0.94b/samp.html, nessus/gdchart0.94b/price_conv.c,
nessus/gdchart0.94b/W.gif, nessus/gdchart0.94b/gdc_pie.c,
nessus/gdchart0.94b/README.txt, nessus/gdchart0.94b/gd1.3/demoin.gif,
nessus/gdchart0.94b/gd1.3/gd.h, nessus/gdchart0.94b/gd1.3/gddemo.c,
nessus/gdchart0.94b/gd1.3/gdfontmb.c, nessus/gdchart0.94b/gd1.3/gdfontl.h,
nessus/gdchart0.94b/gd1.3/webgif.c, nessus/gdchart0.94b/gd1.3/gdfonts.c,
nessus/gdchart0.94b/gd1.3/gdfontmb.h, nessus/gdchart0.94b/gd1.3/gdfontt.c,
nessus/gdchart0.94b/gd1.3/gdfonts.h, nessus/gdchart0.94b/gd1.3/gdfontt.h,
nessus/gdchart0.94b/gd1.3/giftogd.c, nessus/gdchart0.94b/gd1.3/mtables.c,
nessus/gdchart0.94b/gd1.3/mathmake.c, nessus/gdchart0.94b/gd1.3/gdfontg.c,
nessus/gdchart0.94b/gd1.3/index.html, nessus/gdchart0.94b/gd1.3/gd.c,
nessus/gdchart0.94b/gd1.3/readme.txt, nessus/gdchart0.94b/gd1.3/Makefile,
nessus/gdchart0.94b/gd1.3/gdfontl.c, nessus/gdchart0.94b/gd1.3/gdfontg.h,
nessus/gdchart0.94b/makefile, nessus/gdchart0.94b/gdc.c: Removed.
* nessus/gdchart0.94b/gd1.3: Removed empty directory.
* nessus/gdchart0.94b: Removed empty directory.
* MANIFEST: Updated.
Modified: trunk/openvas-client/ChangeLog
===================================================================
--- trunk/openvas-client/ChangeLog 2008-08-06 10:16:44 UTC (rev 1105)
+++ trunk/openvas-client/ChangeLog 2008-08-06 10:43:35 UTC (rev 1106)
@@ -1,3 +1,56 @@
+2008-08-06 Jan-Oliver Wagner
+
+ Removing gd and gdchart according to OpenVAS Change Request #14:
+ http://www.openvas.org/openvas-cr-14.html
+ First part of patch.
+
+ * configure.in: Added check for gdchart
+
+ * nessus.tmpl.in: Add handling of GDC_LIB.
+
+ * include/config.h.in: Add conditional HAVE_GDCHART.
+
+ * nessus/Makefile: Removed any handling of gdchart modules.
+
+ * nessus/html_graph_output.c: Added HAVE_GDCHART conditional and
+ replaced direct includes by generic ones for gdchart.
+
+ * nessus/cli.c (cli_args_output): Replaced _NO_PIES conditional by
+ HAVE_GDCHART.
+
+ * nessus/report_save.c (file_save_ok_callback, report_save_cb):
+ Replaced _NO_PIES and _NOPIE conditionals by HAVE_GDCHART.
+
+ * nessus/nessus.c (main): Added HAVE_GDCHART conditional.
+
+ * nessus/globals.h: Removed already-commented-out definition of _NO_PIES.
+
+ * gdchart0.94b/gdc_samp1.c, nessus/gdchart0.94b/NOTES-092b.txt,
+ nessus/gdchart0.94b/gdc_samp2.c, nessus/gdchart0.94b/NOTES-093b.txt,
+ nessus/gdchart0.94b/gdcpie.h, nessus/gdchart0.94b/NOTES-094b.txt,
+ nessus/gdchart0.94b/gdc.h, nessus/gdchart0.94b/gdc_pie_samp.c,
+ nessus/gdchart0.94b/gdchart.c, nessus/gdchart0.94b/gdchart.h,
+ nessus/gdchart0.94b/samp.html, nessus/gdchart0.94b/price_conv.c,
+ nessus/gdchart0.94b/W.gif, nessus/gdchart0.94b/gdc_pie.c,
+ nessus/gdchart0.94b/README.txt, nessus/gdchart0.94b/gd1.3/demoin.gif,
+ nessus/gdchart0.94b/gd1.3/gd.h, nessus/gdchart0.94b/gd1.3/gddemo.c,
+ nessus/gdchart0.94b/gd1.3/gdfontmb.c, nessus/gdchart0.94b/gd1.3/gdfontl.h,
+ nessus/gdchart0.94b/gd1.3/webgif.c, nessus/gdchart0.94b/gd1.3/gdfonts.c,
+ nessus/gdchart0.94b/gd1.3/gdfontmb.h, nessus/gdchart0.94b/gd1.3/gdfontt.c,
+ nessus/gdchart0.94b/gd1.3/gdfonts.h, nessus/gdchart0.94b/gd1.3/gdfontt.h,
+ nessus/gdchart0.94b/gd1.3/giftogd.c, nessus/gdchart0.94b/gd1.3/mtables.c,
+ nessus/gdchart0.94b/gd1.3/mathmake.c, nessus/gdchart0.94b/gd1.3/gdfontg.c,
+ nessus/gdchart0.94b/gd1.3/index.html, nessus/gdchart0.94b/gd1.3/gd.c,
+ nessus/gdchart0.94b/gd1.3/readme.txt, nessus/gdchart0.94b/gd1.3/Makefile,
+ nessus/gdchart0.94b/gd1.3/gdfontl.c, nessus/gdchart0.94b/gd1.3/gdfontg.h,
+ nessus/gdchart0.94b/makefile, nessus/gdchart0.94b/gdc.c: Removed.
+
+ * nessus/gdchart0.94b/gd1.3: Removed empty directory.
+
+ * nessus/gdchart0.94b: Removed empty directory.
+
+ * MANIFEST: Updated.
+
2008-07-31 Vlatko Kosturjak
* po/hr.po: New. Initial Croatian translation of OpenVAS client.
Modified: trunk/openvas-client/MANIFEST
===================================================================
--- trunk/openvas-client/MANIFEST 2008-08-06 10:16:44 UTC (rev 1105)
+++ trunk/openvas-client/MANIFEST 2008-08-06 10:43:35 UTC (rev 1106)
@@ -64,44 +64,6 @@
nessus/families.h
nessus/filter.c
nessus/filter.h
-nessus/gdchart0.94b/gd1.3/demoin.gif
-nessus/gdchart0.94b/gd1.3/gd.c
-nessus/gdchart0.94b/gd1.3/gddemo.c
-nessus/gdchart0.94b/gd1.3/gdfontg.c
-nessus/gdchart0.94b/gd1.3/gdfontg.h
-nessus/gdchart0.94b/gd1.3/gdfontl.c
-nessus/gdchart0.94b/gd1.3/gdfontl.h
-nessus/gdchart0.94b/gd1.3/gdfontmb.c
-nessus/gdchart0.94b/gd1.3/gdfontmb.h
-nessus/gdchart0.94b/gd1.3/gdfonts.c
-nessus/gdchart0.94b/gd1.3/gdfonts.h
-nessus/gdchart0.94b/gd1.3/gdfontt.c
-nessus/gdchart0.94b/gd1.3/gdfontt.h
-nessus/gdchart0.94b/gd1.3/gd.h
-nessus/gdchart0.94b/gd1.3/giftogd.c
-nessus/gdchart0.94b/gd1.3/index.html
-nessus/gdchart0.94b/gd1.3/Makefile
-nessus/gdchart0.94b/gd1.3/mathmake.c
-nessus/gdchart0.94b/gd1.3/mtables.c
-nessus/gdchart0.94b/gd1.3/readme.txt
-nessus/gdchart0.94b/gd1.3/webgif.c
-nessus/gdchart0.94b/gdc.c
-nessus/gdchart0.94b/gdc.h
-nessus/gdchart0.94b/gdchart.c
-nessus/gdchart0.94b/gdchart.h
-nessus/gdchart0.94b/gdc_pie.c
-nessus/gdchart0.94b/gdcpie.h
-nessus/gdchart0.94b/gdc_pie_samp.c
-nessus/gdchart0.94b/gdc_samp1.c
-nessus/gdchart0.94b/gdc_samp2.c
-nessus/gdchart0.94b/makefile
-nessus/gdchart0.94b/NOTES-092b.txt
-nessus/gdchart0.94b/NOTES-093b.txt
-nessus/gdchart0.94b/NOTES-094b.txt
-nessus/gdchart0.94b/price_conv.c
-nessus/gdchart0.94b/README.txt
-nessus/gdchart0.94b/samp.html
-nessus/gdchart0.94b/W.gif
nessus/globals.h
nessus/globals.w32
nessus/gtk-compat.h
Modified: trunk/openvas-client/configure
===================================================================
--- trunk/openvas-client/configure 2008-08-06 10:16:44 UTC (rev 1105)
+++ trunk/openvas-client/configure 2008-08-06 10:43:35 UTC (rev 1106)
@@ -1,37 +1,746 @@
#! /bin/sh
-
+# From configure.in Revision: 1.9 .
# Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
+# Generated by GNU Autoconf 2.61.
#
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization. ##
+## --------------------- ##
-# Defaults:
-ac_help=
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+
+
+# PATH needs CR
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ echo "#! /bin/sh" >conf$$.sh
+ echo "exit 0" >>conf$$.sh
+ chmod +x conf$$.sh
+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+ PATH_SEPARATOR=';'
+ else
+ PATH_SEPARATOR=:
+ fi
+ rm -f conf$$.sh
+fi
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ as_unset=unset
+else
+ as_unset=false
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+as_nl='
+'
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ { (exit 1); exit 1; }
+fi
+
+# Work around bugs in pre-3.0 UWIN ksh.
+for as_var in ENV MAIL MAILPATH
+do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+ LC_TELEPHONE LC_TIME
+do
+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+ eval $as_var=C; export $as_var
+ else
+ ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+ fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+
+# CDPATH.
+$as_unset CDPATH
+
+
+if test "x$CONFIG_SHELL" = x; then
+ if (eval ":") 2>/dev/null; then
+ as_have_required=yes
+else
+ as_have_required=no
+fi
+
+ if test $as_have_required = yes && (eval ":
+(as_func_return () {
+ (exit \$1)
+}
+as_func_success () {
+ as_func_return 0
+}
+as_func_failure () {
+ as_func_return 1
+}
+as_func_ret_success () {
+ return 0
+}
+as_func_ret_failure () {
+ return 1
+}
+
+exitcode=0
+if as_func_success; then
+ :
+else
+ exitcode=1
+ echo as_func_success failed.
+fi
+
+if as_func_failure; then
+ exitcode=1
+ echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+ :
+else
+ exitcode=1
+ echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+ exitcode=1
+ echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
+ :
+else
+ exitcode=1
+ echo positional parameters were not saved.
+fi
+
+test \$exitcode = 0) || { (exit 1); exit 1; }
+
+(
+ as_lineno_1=\$LINENO
+ as_lineno_2=\$LINENO
+ test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" &&
+ test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; }
+") 2> /dev/null; then
+ :
+else
+ as_candidate_shells=
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ case $as_dir in
+ /*)
+ for as_base in sh bash ksh sh5; do
+ as_candidate_shells="$as_candidate_shells $as_dir/$as_base"
+ done;;
+ esac
+done
+IFS=$as_save_IFS
+
+
+ for as_shell in $as_candidate_shells $SHELL; do
+ # Try only shells that exist, to save several forks.
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+ { ("$as_shell") 2> /dev/null <<\_ASEOF
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+:
+_ASEOF
+}; then
+ CONFIG_SHELL=$as_shell
+ as_have_required=yes
+ if { "$as_shell" 2> /dev/null <<\_ASEOF
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in
+ *posix*) set -o posix ;;
+esac
+
+fi
+
+
+:
+(as_func_return () {
+ (exit $1)
+}
+as_func_success () {
+ as_func_return 0
+}
+as_func_failure () {
+ as_func_return 1
+}
+as_func_ret_success () {
+ return 0
+}
+as_func_ret_failure () {
+ return 1
+}
+
+exitcode=0
+if as_func_success; then
+ :
+else
+ exitcode=1
+ echo as_func_success failed.
+fi
+
+if as_func_failure; then
+ exitcode=1
+ echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+ :
+else
+ exitcode=1
+ echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+ exitcode=1
+ echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = "$1" ); then
+ :
+else
+ exitcode=1
+ echo positional parameters were not saved.
+fi
+
+test $exitcode = 0) || { (exit 1); exit 1; }
+
+(
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
+
+_ASEOF
+}; then
+ break
+fi
+
+fi
+
+ done
+
+ if test "x$CONFIG_SHELL" != x; then
+ for as_var in BASH_ENV ENV
+ do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+ done
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+fi
+
+
+ if test $as_have_required = no; then
+ echo This script requires a shell more modern than all the
+ echo shells that I found on your system. Please install a
+ echo modern shell, or manually run the script under such a
+ echo shell if you do have one.
+ { (exit 1); exit 1; }
+fi
+
+
+fi
+
+fi
+
+
+
+(eval "as_func_return () {
+ (exit \$1)
+}
+as_func_success () {
+ as_func_return 0
+}
+as_func_failure () {
+ as_func_return 1
+}
+as_func_ret_success () {
+ return 0
+}
+as_func_ret_failure () {
+ return 1
+}
+
+exitcode=0
+if as_func_success; then
+ :
+else
+ exitcode=1
+ echo as_func_success failed.
+fi
+
+if as_func_failure; then
+ exitcode=1
+ echo as_func_failure succeeded.
+fi
+
+if as_func_ret_success; then
+ :
+else
+ exitcode=1
+ echo as_func_ret_success failed.
+fi
+
+if as_func_ret_failure; then
+ exitcode=1
+ echo as_func_ret_failure succeeded.
+fi
+
+if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
+ :
+else
+ exitcode=1
+ echo positional parameters were not saved.
+fi
+
+test \$exitcode = 0") || {
+ echo No shell found that supports shell functions.
+ echo Please tell autoconf at gnu.org about your system,
+ echo including any error possibly output before this
+ echo message
+}
+
+
+
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || {
+
+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+ # uniformly replaced by the line number. The first 'sed' inserts a
+ # line-number line after each line using $LINENO; the second 'sed'
+ # does the real work. The second script uses 'N' to pair each
+ # line-number line with the line containing $LINENO, and appends
+ # trailing '-' during substitution so that $LINENO is not a special
+ # case at line end.
+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+ # scripts with optimization help from Paolo Bonzini. Blame Lee
+ # E. McMahon (1931-1989) for sed's syntax. :-)
+ sed -n '
+ p
+ /[$]LINENO/=
+ ' <$as_myself |
+ sed '
+ s/[$]LINENO.*/&-/
+ t lineno
+ b
+ :lineno
+ N
+ :loop
+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+ t loop
+ s/-\n.*//
+ ' >$as_me.lineno &&
+ chmod +x "$as_me.lineno" ||
+ { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+ { (exit 1); exit 1; }; }
+
+ # Don't try to exec as it changes $[0], causing all sort of problems
+ # (the dirname of $[0] is not the place where we might find the
+ # original and so on. Autoconf is especially sensitive to this).
+ . "./$as_me.lineno"
+ # Exit status is that of the last command.
+ exit
+}
+
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in
+-n*)
+ case `echo 'x\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ *) ECHO_C='\c';;
+ esac;;
+*)
+ ECHO_N='-n';;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
+else
+ rm -f conf$$.dir
+ mkdir conf$$.dir
+fi
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p=:
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+
+exec 7<&0 &1
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+#
+# Initializations.
+#
ac_default_prefix=/usr/local
-# Any additions from configure.in:
+ac_clean_files=
+ac_config_libobj_dir=.
+LIBOBJS=
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Identity of this package.
+PACKAGE_NAME=
+PACKAGE_TARNAME=
+PACKAGE_VERSION=
+PACKAGE_STRING=
+PACKAGE_BUGREPORT=
+
+ac_unique_file=".root-dir"
ac_default_prefix="/usr/local"
-ac_help="$ac_help
- --enable-release set the compiler flags to -O6"
-ac_help="$ac_help
- --enable-debug set the compiler flags to -g"
-ac_help="$ac_help
- --enable-gtk build with GTK"
-ac_help="$ac_help
- --with-ssl=[DIR] enable SSL support using libraries in DIR"
-ac_help="$ac_help
- --with-x use the X Window System"
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include
+#ifdef HAVE_SYS_TYPES_H
+# include
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include
+#endif
+#ifdef STDC_HEADERS
+# include
+# include
+#else
+# ifdef HAVE_STDLIB_H
+# include
+# endif
+#endif
+#ifdef HAVE_STRING_H
+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
+# include
+# endif
+# include
+#endif
+#ifdef HAVE_STRINGS_H
+# include
+#endif
+#ifdef HAVE_INTTYPES_H
+# include
+#endif
+#ifdef HAVE_STDINT_H
+# include
+#endif
+#ifdef HAVE_UNISTD_H
+# include
+#endif"
+ac_subst_vars='SHELL
+PATH_SEPARATOR
+PACKAGE_NAME
+PACKAGE_TARNAME
+PACKAGE_VERSION
+PACKAGE_STRING
+PACKAGE_BUGREPORT
+exec_prefix
+prefix
+program_transform_name
+bindir
+sbindir
+libexecdir
+datarootdir
+datadir
+sysconfdir
+sharedstatedir
+localstatedir
+includedir
+oldincludedir
+docdir
+infodir
+htmldir
+dvidir
+pdfdir
+psdir
+libdir
+localedir
+mandir
+DEFS
+ECHO_C
+ECHO_N
+ECHO_T
+LIBS
+build_alias
+host_alias
+target_alias
+build
+build_cpu
+build_vendor
+build_os
+host
+host_cpu
+host_vendor
+host_os
+CC
+CFLAGS
+LDFLAGS
+CPPFLAGS
+ac_ct_CC
+EXEEXT
+OBJEXT
+SET_MAKE
+INSTALL_PROGRAM
+INSTALL_SCRIPT
+INSTALL_DATA
+CPP
+GREP
+EGREP
+PKG_CONFIG
+GLIB_CFLAGS
+GLIB_LIBS
+ALLOCA
+XMKMF
+X_CFLAGS
+X_PRE_LIBS
+X_LIBS
+X_EXTRA_LIBS
+GTKCONFIG_CFLAGS
+GTKCONFIG_LIBS
+AR
+PWD
+PWDD
+CWALL
+GTK_VERSION
+NESSUS_MAJOR
+NESSUS_MINOR
+NESSUS_PATCH
+NESSUS_RC
+NESSUS_DATE
+NESS_COMPILER
+NESS_OS_NAME
+NESS_OS_VERSION
+INSTALL_DIR
+INSTALL
+RUN_LIBS
+resolv_lib
+socket_lib
+nsl_lib
+ssl_lib
+gtk_flags
+debug_flags
+nessus_lib
+man_nessus_1
+dl_lib
+gdc_lib
+client
+client_install
+ac_configure_args
+ssl
+sslcflags
+installuser
+gettext_flags
+LIBOBJS
+LTLIBOBJS'
+ac_subst_files=''
+ ac_precious_vars='build_alias
+host_alias
+target_alias
+CC
+CFLAGS
+LDFLAGS
+LIBS
+CPPFLAGS
+CPP
+XMKMF'
+
+
# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
# The variables have the same names as the options, with
# dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
+cache_file=/dev/null
exec_prefix=NONE
-host=NONE
no_create=
-nonopt=NONE
no_recursion=
prefix=NONE
program_prefix=NONE
@@ -40,94 +749,117 @@
silent=
site=
srcdir=
-target=NONE
verbose=
x_includes=NONE
x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+# (The list follows the same order as the GNU Coding Standards.)
bindir='${exec_prefix}/bin'
sbindir='${exec_prefix}/sbin'
libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
+datarootdir='${prefix}/share'
+datadir='${datarootdir}'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
includedir='${prefix}/include'
oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
+docdir='${datarootdir}/doc/${PACKAGE}'
+infodir='${datarootdir}/info'
+htmldir='${docdir}'
+dvidir='${docdir}'
+pdfdir='${docdir}'
+psdir='${docdir}'
+libdir='${exec_prefix}/lib'
+localedir='${datarootdir}/locale'
+mandir='${datarootdir}/man'
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
-
ac_prev=
+ac_dashdash=
for ac_option
do
-
# If the previous option needs an argument, assign it.
if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
+ eval $ac_prev=\$ac_option
ac_prev=
continue
fi
- case "$ac_option" in
- -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
- *) ac_optarg= ;;
+ case $ac_option in
+ *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+ *) ac_optarg=yes ;;
esac
# Accept the important Cygnus configure options, so we can diagnose typos.
- case "$ac_option" in
+ case $ac_dashdash$ac_option in
+ --)
+ ac_dashdash=yes ;;
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
-bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir="$ac_optarg" ;;
+ bindir=$ac_optarg ;;
-build | --build | --buil | --bui | --bu)
- ac_prev=build ;;
+ ac_prev=build_alias ;;
-build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build="$ac_optarg" ;;
+ build_alias=$ac_optarg ;;
-cache-file | --cache-file | --cache-fil | --cache-fi \
| --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
ac_prev=cache_file ;;
-cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
| --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file="$ac_optarg" ;;
+ cache_file=$ac_optarg ;;
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+ --config-cache | -C)
+ cache_file=config.cache ;;
+
+ -datadir | --datadir | --datadi | --datad)
ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
- datadir="$ac_optarg" ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=*)
+ datadir=$ac_optarg ;;
+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
+ | --dataroo | --dataro | --datar)
+ ac_prev=datarootdir ;;
+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
+ datarootdir=$ac_optarg ;;
+
-disable-* | --disable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
+ ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- eval "enable_${ac_feature}=no" ;;
+ expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+ { (exit 1); exit 1; }; }
+ ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
+ eval enable_$ac_feature=no ;;
+ -docdir | --docdir | --docdi | --doc | --do)
+ ac_prev=docdir ;;
+ -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
+ docdir=$ac_optarg ;;
+
+ -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
+ ac_prev=dvidir ;;
+ -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
+ dvidir=$ac_optarg ;;
+
-enable-* | --enable-*)
- ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
+ ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
- if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
- fi
- ac_feature=`echo $ac_feature| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "enable_${ac_feature}='$ac_optarg'" ;;
+ expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+ { (exit 1); exit 1; }; }
+ ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'`
+ eval enable_$ac_feature=\$ac_optarg ;;
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
| --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
@@ -136,116 +868,77 @@
-exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
| --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
| --exec=* | --exe=* | --ex=*)
- exec_prefix="$ac_optarg" ;;
+ exec_prefix=$ac_optarg ;;
-gas | --gas | --ga | --g)
# Obsolete; use --with-gas.
with_gas=yes ;;
- -help | --help | --hel | --he)
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
- --cache-file=FILE cache test results in FILE
- --help print this message
- --no-create do not create output files
- --quiet, --silent do not print \`checking...' messages
- --version print the version of autoconf that created configure
-Directory and file names:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [same as prefix]
- --bindir=DIR user executables in DIR [EPREFIX/bin]
- --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
- --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data in DIR
- [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data in DIR
- [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
- --libdir=DIR object code libraries in DIR [EPREFIX/lib]
- --includedir=DIR C header files in DIR [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
- --infodir=DIR info documentation in DIR [PREFIX/info]
- --mandir=DIR man documentation in DIR [PREFIX/man]
- --srcdir=DIR find the sources in DIR [configure dir or ..]
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM
- run sed PROGRAM on installed program names
-EOF
- cat << EOF
-Host type:
- --build=BUILD configure for building on BUILD [BUILD=HOST]
- --host=HOST configure for HOST [guessed]
- --target=TARGET configure for TARGET [TARGET=HOST]
-Features and packages:
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --x-includes=DIR X include files are in DIR
- --x-libraries=DIR X library files are in DIR
-EOF
- if test -n "$ac_help"; then
- echo "--enable and --with options recognized:$ac_help"
- fi
- exit 0 ;;
+ -help | --help | --hel | --he | -h)
+ ac_init_help=long ;;
+ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+ ac_init_help=recursive ;;
+ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+ ac_init_help=short ;;
-host | --host | --hos | --ho)
- ac_prev=host ;;
+ ac_prev=host_alias ;;
-host=* | --host=* | --hos=* | --ho=*)
- host="$ac_optarg" ;;
+ host_alias=$ac_optarg ;;
+ -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
+ ac_prev=htmldir ;;
+ -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
+ | --ht=*)
+ htmldir=$ac_optarg ;;
+
-includedir | --includedir | --includedi | --included | --include \
| --includ | --inclu | --incl | --inc)
ac_prev=includedir ;;
-includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
| --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir="$ac_optarg" ;;
+ includedir=$ac_optarg ;;
-infodir | --infodir | --infodi | --infod | --info | --inf)
ac_prev=infodir ;;
-infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir="$ac_optarg" ;;
+ infodir=$ac_optarg ;;
-libdir | --libdir | --libdi | --libd)
ac_prev=libdir ;;
-libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir="$ac_optarg" ;;
+ libdir=$ac_optarg ;;
-libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
| --libexe | --libex | --libe)
ac_prev=libexecdir ;;
-libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
| --libexe=* | --libex=* | --libe=*)
- libexecdir="$ac_optarg" ;;
+ libexecdir=$ac_optarg ;;
+ -localedir | --localedir | --localedi | --localed | --locale)
+ ac_prev=localedir ;;
+ -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
+ localedir=$ac_optarg ;;
+
-localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
+ | --localstate | --localstat | --localsta | --localst | --locals)
ac_prev=localstatedir ;;
-localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
- localstatedir="$ac_optarg" ;;
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
+ localstatedir=$ac_optarg ;;
-mandir | --mandir | --mandi | --mand | --man | --ma | --m)
ac_prev=mandir ;;
-mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir="$ac_optarg" ;;
+ mandir=$ac_optarg ;;
-nfp | --nfp | --nf)
# Obsolete; use --without-fp.
with_fp=no ;;
-no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c)
+ | --no-cr | --no-c | -n)
no_create=yes ;;
-no-recursion | --no-recursion | --no-recursio | --no-recursi \
@@ -259,26 +952,26 @@
-oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
| --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
| --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir="$ac_optarg" ;;
+ oldincludedir=$ac_optarg ;;
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
ac_prev=prefix ;;
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix="$ac_optarg" ;;
+ prefix=$ac_optarg ;;
-program-prefix | --program-prefix | --program-prefi | --program-pref \
| --program-pre | --program-pr | --program-p)
ac_prev=program_prefix ;;
-program-prefix=* | --program-prefix=* | --program-prefi=* \
| --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix="$ac_optarg" ;;
+ program_prefix=$ac_optarg ;;
-program-suffix | --program-suffix | --program-suffi | --program-suff \
| --program-suf | --program-su | --program-s)
ac_prev=program_suffix ;;
-program-suffix=* | --program-suffix=* | --program-suffi=* \
| --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix="$ac_optarg" ;;
+ program_suffix=$ac_optarg ;;
-program-transform-name | --program-transform-name \
| --program-transform-nam | --program-transform-na \
@@ -295,8 +988,18 @@
| --program-transfo=* | --program-transf=* \
| --program-trans=* | --program-tran=* \
| --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name="$ac_optarg" ;;
+ program_transform_name=$ac_optarg ;;
+ -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
+ ac_prev=pdfdir ;;
+ -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
+ pdfdir=$ac_optarg ;;
+
+ -psdir | --psdir | --psdi | --psd | --ps)
+ ac_prev=psdir ;;
+ -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
+ psdir=$ac_optarg ;;
+
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
@@ -305,7 +1008,7 @@
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
| --sbi=* | --sb=*)
- sbindir="$ac_optarg" ;;
+ sbindir=$ac_optarg ;;
-sharedstatedir | --sharedstatedir | --sharedstatedi \
| --sharedstated | --sharedstate | --sharedstat | --sharedsta \
@@ -316,58 +1019,53 @@
| --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
| --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
| --sha=* | --sh=*)
- sharedstatedir="$ac_optarg" ;;
+ sharedstatedir=$ac_optarg ;;
-site | --site | --sit)
ac_prev=site ;;
-site=* | --site=* | --sit=*)
- site="$ac_optarg" ;;
+ site=$ac_optarg ;;
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
ac_prev=srcdir ;;
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir="$ac_optarg" ;;
+ srcdir=$ac_optarg ;;
-sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
| --syscon | --sysco | --sysc | --sys | --sy)
ac_prev=sysconfdir ;;
-sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
| --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir="$ac_optarg" ;;
+ sysconfdir=$ac_optarg ;;
-target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target ;;
+ ac_prev=target_alias ;;
-target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target="$ac_optarg" ;;
+ target_alias=$ac_optarg ;;
-v | -verbose | --verbose | --verbos | --verbo | --verb)
verbose=yes ;;
- -version | --version | --versio | --versi | --vers)
- echo "configure generated by autoconf version 2.13"
- exit 0 ;;
+ -version | --version | --versio | --versi | --vers | -V)
+ ac_init_version=: ;;
-with-* | --with-*)
- ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
+ ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case "$ac_option" in
- *=*) ;;
- *) ac_optarg=yes ;;
- esac
- eval "with_${ac_package}='$ac_optarg'" ;;
+ expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid package name: $ac_package" >&2
+ { (exit 1); exit 1; }; }
+ ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
+ eval with_$ac_package=\$ac_optarg ;;
-without-* | --without-*)
- ac_package=`echo $ac_option|sed -e 's/-*without-//'`
+ ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
- if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
- { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
- fi
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- eval "with_${ac_package}=no" ;;
+ expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid package name: $ac_package" >&2
+ { (exit 1); exit 1; }; }
+ ac_package=`echo $ac_package | sed 's/[-.]/_/g'`
+ eval with_$ac_package=no ;;
--x)
# Obsolete; use --with-x.
@@ -378,436 +1076,1603 @@
ac_prev=x_includes ;;
-x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
| --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes="$ac_optarg" ;;
+ x_includes=$ac_optarg ;;
-x-libraries | --x-libraries | --x-librarie | --x-librari \
| --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
ac_prev=x_libraries ;;
-x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries="$ac_optarg" ;;
+ x_libraries=$ac_optarg ;;
- -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
+ -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+ { (exit 1); exit 1; }; }
;;
+ *=*)
+ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+ { (exit 1); exit 1; }; }
+ eval $ac_envvar=\$ac_optarg
+ export $ac_envvar ;;
+
*)
- if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
- echo "configure: warning: $ac_option: invalid host type" 1>&2
- fi
- if test "x$nonopt" != xNONE; then
- { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
- fi
- nonopt="$ac_option"
+ # FIXME: should be removed in autoconf 3.0.
+ echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
;;
esac
done
if test -n "$ac_prev"; then
- { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
+ ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ { echo "$as_me: error: missing argument to $ac_option" >&2
+ { (exit 1); exit 1; }; }
fi
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+# Be sure to have absolute directory names.
+for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
+ datadir sysconfdir sharedstatedir localstatedir includedir \
+ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
+ libdir localedir mandir
+do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ [\\/$]* | ?:[\\/]* ) continue;;
+ NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
+ esac
+ { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
+ { (exit 1); exit 1; }; }
+done
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
- exec 6>/dev/null
-else
- exec 6>&1
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+ if test "x$build_alias" = x; then
+ cross_compiling=maybe
+ echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used." >&2
+ elif test "x$build_alias" != "x$host_alias"; then
+ cross_compiling=yes
+ fi
fi
-exec 5>./config.log
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
-do
- case "$ac_arg" in
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c) ;;
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
- ac_configure_args="$ac_configure_args '$ac_arg'" ;;
- *) ac_configure_args="$ac_configure_args $ac_arg" ;;
- esac
-done
+test "$silent" = yes && exec 6>/dev/null
-# NLS nuisances.
-# Only set these to C if already set. These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
+ac_pwd=`pwd` && test -n "$ac_pwd" &&
+ac_ls_di=`ls -di .` &&
+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
+ { echo "$as_me: error: Working directory cannot be determined" >&2
+ { (exit 1); exit 1; }; }
+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
+ { echo "$as_me: error: pwd does not report name of working directory" >&2
+ { (exit 1); exit 1; }; }
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=.root-dir
# Find the source files, if location was not specified.
if test -z "$srcdir"; then
ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_prog=$0
- ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
- test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
+ # Try the directory containing this script, then the parent directory.
+ ac_confdir=`$as_dirname -- "$0" ||
+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$0" : 'X\(//\)[^/]' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+echo X"$0" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
+ if test ! -r "$srcdir/$ac_unique_file"; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
- else
- { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
- fi
+if test ! -r "$srcdir/$ac_unique_file"; then
+ test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
+ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
+ { (exit 1); exit 1; }; }
fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
+ac_abs_confdir=`(
+ cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2
+ { (exit 1); exit 1; }; }
+ pwd)`
+# When building in place, set srcdir=.
+if test "$ac_abs_confdir" = "$ac_pwd"; then
+ srcdir=.
+fi
+# Remove unnecessary trailing slashes from srcdir.
+# Double slashes in file names in object file debugging info
+# mess up M-x gdb in Emacs.
+case $srcdir in
+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
+esac
+for ac_var in $ac_precious_vars; do
+ eval ac_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_env_${ac_var}_value=\$${ac_var}
+ eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_cv_env_${ac_var}_value=\$${ac_var}
+done
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat <<_ACEOF
+\`configure' configures this package to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE. See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+ -h, --help display this help and exit
+ --help=short display options specific to this package
+ --help=recursive display the short help of all the included packages
+ -V, --version display version information and exit
+ -q, --quiet, --silent do not print \`checking...' messages
+ --cache-file=FILE cache test results in FILE [disabled]
+ -C, --config-cache alias for \`--cache-file=config.cache'
+ -n, --no-create do not create output files
+ --srcdir=DIR find the sources in DIR [configure dir or \`..']
+
+Installation directories:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+ --bindir=DIR user executables [EPREFIX/bin]
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
+ --libexecdir=DIR program executables [EPREFIX/libexec]
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --libdir=DIR object code libraries [EPREFIX/lib]
+ --includedir=DIR C header files [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
+ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
+ --infodir=DIR info documentation [DATAROOTDIR/info]
+ --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ --mandir=DIR man documentation [DATAROOTDIR/man]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
+ --htmldir=DIR html documentation [DOCDIR]
+ --dvidir=DIR dvi documentation [DOCDIR]
+ --pdfdir=DIR pdf documentation [DOCDIR]
+ --psdir=DIR ps documentation [DOCDIR]
+_ACEOF
+
+ cat <<\_ACEOF
+
+X features:
+ --x-includes=DIR X include files are in DIR
+ --x-libraries=DIR X library files are in DIR
+
+System types:
+ --build=BUILD configure for building on BUILD [guessed]
+ --host=HOST cross-compile to build programs to run on HOST [BUILD]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+
+ cat <<\_ACEOF
+
+Optional Features:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --enable-release set the compiler flags to -O6
+ --enable-debug set the compiler flags to -g
+ --enable-gtk build with GTK
+
+Optional Packages:
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --with-ssl=DIR enable SSL support using libraries in DIR
+ --with-x use the X Window System
+
+Some influential environment variables:
+ CC C compiler command
+ CFLAGS C compiler flags
+ LDFLAGS linker flags, e.g. -L if you have libraries in a
+ nonstandard directory
+ LIBS libraries to pass to the linker, e.g. -l
+ CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if
+ you have headers in a nonstandard directory
+ CPP C preprocessor
+ XMKMF Path to xmkmf, Makefile generator for X Window System
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+_ACEOF
+ac_status=$?
+fi
+
+if test "$ac_init_help" = "recursive"; then
+ # If there are subdirs, report their specific --help.
+ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+ test -d "$ac_dir" || continue
+ ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+ .) # We are building in place.
+ ac_srcdir=.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+ cd "$ac_dir" || { ac_status=$?; continue; }
+ # Check for guested configure.
+ if test -f "$ac_srcdir/configure.gnu"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_srcdir/configure"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure" --help=recursive
+ else
+ echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ fi || ac_status=$?
+ cd "$ac_pwd" || { ac_status=$?; break; }
+ done
+fi
+
+test -n "$ac_init_help" && exit $ac_status
+if $ac_init_version; then
+ cat <<\_ACEOF
+configure
+generated by GNU Autoconf 2.61
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+ exit
+fi
+cat >config.log <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by $as_me, which was
+generated by GNU Autoconf 2.61. Invocation command line was
+
+ $ $0 $@
+
+_ACEOF
+exec 5>>config.log
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
+
+/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
+/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
+/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ echo "PATH: $as_dir"
+done
+IFS=$as_save_IFS
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+ for ac_arg
+ do
+ case $ac_arg in
+ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ continue ;;
+ *\'*)
+ ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ case $ac_pass in
+ 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+ 2)
+ ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+ if test $ac_must_keep_next = true; then
+ ac_must_keep_next=false # Got value, back to normal.
+ else
+ case $ac_arg in
+ *=* | --config-cache | -C | -disable-* | --disable-* \
+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+ | -with-* | --with-* | -without-* | --without-* | --x)
+ case "$ac_configure_args0 " in
+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+ esac
+ ;;
+ -* ) ac_must_keep_next=true ;;
+ esac
+ fi
+ ac_configure_args="$ac_configure_args '$ac_arg'"
+ ;;
+ esac
+ done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log. We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Use '\'' to represent an apostrophe within the trap.
+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
+trap 'exit_status=$?
+ # Save into config.log some information that might help in debugging.
+ {
+ echo
+
+ cat <<\_ASBOX
+## ---------------- ##
+## Cache variables. ##
+## ---------------- ##
+_ASBOX
+ echo
+ # The following way of writing the cache mishandles newlines in values,
+(
+ for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5
+echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ *) $as_unset $ac_var ;;
+ esac ;;
+ esac
+ done
+ (set) 2>&1 |
+ case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
+ sed -n \
+ "s/'\''/'\''\\\\'\'''\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
+ ;; #(
+ *)
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+ ;;
+ esac |
+ sort
+)
+ echo
+
+ cat <<\_ASBOX
+## ----------------- ##
+## Output variables. ##
+## ----------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_vars
+ do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ echo "$ac_var='\''$ac_val'\''"
+ done | sort
+ echo
+
+ if test -n "$ac_subst_files"; then
+ cat <<\_ASBOX
+## ------------------- ##
+## File substitutions. ##
+## ------------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_files
+ do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ echo "$ac_var='\''$ac_val'\''"
+ done | sort
+ echo
+ fi
+
+ if test -s confdefs.h; then
+ cat <<\_ASBOX
+## ----------- ##
+## confdefs.h. ##
+## ----------- ##
+_ASBOX
+ echo
+ cat confdefs.h
+ echo
+ fi
+ test "$ac_signal" != 0 &&
+ echo "$as_me: caught signal $ac_signal"
+ echo "$as_me: exit $exit_status"
+ } >&5
+ rm -f core *.core core.conftest.* &&
+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
+ exit $exit_status
+' 0
+for ac_signal in 1 2 13 15; do
+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -f -r conftest* confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
+if test -n "$CONFIG_SITE"; then
+ set x "$CONFIG_SITE"
+elif test "x$prefix" != xNONE; then
+ set x "$prefix/share/config.site" "$prefix/etc/config.site"
+else
+ set x "$ac_default_prefix/share/config.site" \
+ "$ac_default_prefix/etc/config.site"
fi
-for ac_site_file in $CONFIG_SITE; do
+shift
+for ac_site_file
+do
if test -r "$ac_site_file"; then
- echo "loading site script $ac_site_file"
+ { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+ sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file"
fi
done
if test -r "$cache_file"; then
- echo "loading cache $cache_file"
- . $cache_file
+ # Some versions of bash will fail to source /dev/null (special
+ # files actually), so we avoid doing that.
+ if test -f "$cache_file"; then
+ { echo "$as_me:$LINENO: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+ case $cache_file in
+ [\\/]* | ?:[\\/]* ) . "$cache_file";;
+ *) . "./$cache_file";;
+ esac
+ fi
else
- echo "creating cache $cache_file"
- > $cache_file
+ { echo "$as_me:$LINENO: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+ >$cache_file
fi
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in $ac_precious_vars; do
+ eval ac_old_set=\$ac_cv_env_${ac_var}_set
+ eval ac_new_set=\$ac_env_${ac_var}_set
+ eval ac_old_val=\$ac_cv_env_${ac_var}_value
+ eval ac_new_val=\$ac_env_${ac_var}_value
+ case $ac_old_set,$ac_new_set in
+ set,)
+ { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,set)
+ { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,);;
+ *)
+ if test "x$ac_old_val" != "x$ac_new_val"; then
+ { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
+echo "$as_me: former value: $ac_old_val" >&2;}
+ { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
+echo "$as_me: current value: $ac_new_val" >&2;}
+ ac_cache_corrupted=:
+ fi;;
+ esac
+ # Pass precious variables to config.status.
+ if test "$ac_new_set" = set; then
+ case $ac_new_val in
+ *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *) ac_arg=$ac_var=$ac_new_val ;;
+ esac
+ case " $ac_configure_args " in
+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
+ *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ esac
+ fi
+done
+if $ac_cache_corrupted; then
+ { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+ { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
- # Stardent Vistra SVR4 grep lacks -e, says ghazi at caip.rutgers.edu.
- if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
- ac_n= ac_c='
-' ac_t=' '
- else
- ac_n=-n ac_c= ac_t=
- fi
-else
- ac_n= ac_c='\c' ac_t=
-fi
-# From configure.in Revision: 1.9
save_IFS="${IFS}"
IFS=.
read NESSUS_MAJOR NESSUS_MINOR NESSUS_PATCH NESSUS_RC /dev/null ||
-{ echo "configure: error: *** Panic: Corrupt version file" 1>&2; exit 1; }
+{ { echo "$as_me:$LINENO: error: *** Panic: Corrupt version file" >&5
+echo "$as_me: error: *** Panic: Corrupt version file" >&2;}
+ { (exit 1); exit 1; }; }
test "x$prefix" != "xNONE" || prefix=/usr/local
+ac_config_headers="$ac_config_headers include/config.h"
ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
+for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
+ if test -f "$ac_dir/install-sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install-sh -c"
break
- elif test -f $ac_dir/install.sh; then
+ elif test -f "$ac_dir/install.sh"; then
ac_aux_dir=$ac_dir
ac_install_sh="$ac_aux_dir/install.sh -c"
break
+ elif test -f "$ac_dir/shtool"; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/shtool install -c"
+ break
fi
done
if test -z "$ac_aux_dir"; then
- { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
+ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5
+echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;}
+ { (exit 1); exit 1; }; }
fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
+ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
+ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
+
# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+ { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5
+echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;}
+ { (exit 1); exit 1; }; }
+
+{ echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6; }
+if test "${ac_cv_build+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+ { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+ { (exit 1); exit 1; }; }
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+ { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5
+echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5
+echo "$as_me: error: invalid value of canonical build" >&2;}
+ { (exit 1); exit 1; }; };;
+esac
+build=$ac_cv_build
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:576: checking host system type" >&5
-host_alias=$host
-case "$host_alias" in
-NONE)
- case $nonopt in
- NONE)
- if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
- else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
- fi ;;
- *) host_alias=$nonopt ;;
- esac ;;
+{ echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6; }
+if test "${ac_cv_host+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+ { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5
+echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5
+echo "$as_me: error: invalid value of canonical host" >&2;}
+ { (exit 1); exit 1; }; };;
esac
+host=$ac_cv_host
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-# Extract the first word of "gcc", so it can be a program name with args.
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}gcc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
+else
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:607: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="gcc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6; }
+else
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet. If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet. If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="gcc"
- break
- fi
- done
- IFS="$ac_save_ifs"
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
fi
fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
+ { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
else
- echo "$ac_t""no" 1>&6
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
fi
+
+ fi
+fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:637: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
ac_prog_rejected=no
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- break
- fi
- done
- IFS="$ac_save_ifs"
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
if test $ac_prog_rejected = yes; then
# We found a bogon in the path, so make sure we never use it.
set dummy $ac_cv_prog_CC
shift
- if test $# -gt 0; then
+ if test $# != 0; then
# We chose a different compiler from the bogus one.
# However, it has the same basename, so the bogon will be chosen
# first if we set CC to just the basename; use the full file name.
shift
- set dummy "$ac_dir/$ac_word" "$@"
- shift
- ac_cv_prog_CC="$@"
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
fi
fi
fi
fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
+ { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
else
- echo "$ac_t""no" 1>&6
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
fi
- if test -z "$CC"; then
- case "`uname -s`" in
- *win32* | *WIN32*)
- # Extract the first word of "cl", so it can be a program name with args.
-set dummy cl; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:688: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in cl.exe
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_prog_CC="cl"
- break
- fi
- done
- IFS="$ac_save_ifs"
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
fi
fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$ac_t""$CC" 1>&6
+ { echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6; }
else
- echo "$ac_t""no" 1>&6
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
fi
- ;;
- esac
+
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in cl.exe
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
fi
- test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
+done
+done
+IFS=$as_save_IFS
+
fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6; }
+else
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+fi
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:720: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
+ test -n "$ac_ct_CC" && break
+done
-cat > conftest.$ac_ext << EOF
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet. If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&5
+echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
+whose name does not start with the host triplet. If you think this
+configuration is useful to you, please write to autoconf at gnu.org." >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+fi
-#line 731 "configure"
-#include "confdefs.h"
+fi
-main(){return(0);}
-EOF
-if { (eval echo configure:736: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- ac_cv_prog_cc_works=yes
- # If we can't run a trivial program, we are probably using a cross compiler.
- if (./conftest; exit) 2>/dev/null; then
- ac_cv_prog_cc_cross=no
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO: checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (ac_try="$ac_compiler --version >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compiler --version >&5") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (ac_try="$ac_compiler -v >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compiler -v >&5") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (ac_try="$ac_compiler -V >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compiler -V >&5") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; }
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+#
+# List of possible output files, starting from the most likely.
+# The algorithm is not robust to junk in `.', hence go to wildcards (a.*)
+# only as a last resort. b.out is created by i960 compilers.
+ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out'
+#
+# The IRIX 6 linker writes into existing files which may not be
+# executable, retaining their permissions. Remove them first so a
+# subsequent execution test works.
+ac_rmfiles=
+for ac_file in $ac_files
+do
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+ * ) ac_rmfiles="$ac_rmfiles $ac_file";;
+ esac
+done
+rm -f $ac_rmfiles
+
+if { (ac_try="$ac_link_default"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link_default") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
+# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
+# in a Makefile. We should not override ac_cv_exeext if it was cached,
+# so that the user can short-circuit this test for compilers unknown to
+# Autoconf.
+for ac_file in $ac_files ''
+do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj )
+ ;;
+ [ab].out )
+ # We found the default executable, but exeext='' is most
+ # certainly right.
+ break;;
+ *.* )
+ if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ then :; else
+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ fi
+ # We set ac_cv_exeext here because the later test for it is not
+ # safe: cross compilers may not add the suffix if given an `-o'
+ # argument, so we may need to know it at that point already.
+ # Even if this section looks crufty: it has the advantage of
+ # actually working.
+ break;;
+ * )
+ break;;
+ esac
+done
+test "$ac_cv_exeext" = no && ac_cv_exeext=
+
+else
+ ac_file=''
+fi
+
+{ echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6; }
+if test -z "$ac_file"; then
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; }
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+ if { ac_try='./$ac_file'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ cross_compiling=no
else
- ac_cv_prog_cc_cross=yes
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
fi
+fi
+{ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6; }
+
+{ echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; }
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;;
+ *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ break;;
+ * ) break;;
+ esac
+done
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- ac_cv_prog_cc_works=no
+ { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
fi
-rm -fr conftest*
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
-if test $ac_cv_prog_cc_works = no; then
- { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
+rm -f conftest$ac_cv_exeext
+{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6; }
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+{ echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; }
+if test "${ac_cv_objext+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ for ac_file in conftest.o conftest.obj conftest.*; do
+ test -f "$ac_file" || continue;
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;;
+ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+ break;;
+ esac
+done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
fi
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:762: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
-cross_compiling=$ac_cv_prog_cc_cross
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:767: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6; }
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.c <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:776: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
- ac_cv_prog_gcc=yes
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_compiler_gnu=yes
else
- ac_cv_prog_gcc=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_compiler_gnu=no
fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; }
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_save_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ ac_cv_prog_cc_g=no
+ CFLAGS="-g"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
+int
+main ()
+{
-if test $ac_cv_prog_gcc = yes; then
- GCC=yes
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_g=yes
else
- GCC=
-fi
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
-ac_test_CFLAGS="${CFLAGS+set}"
-ac_save_CFLAGS="$CFLAGS"
-CFLAGS=
-echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:795: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ CFLAGS=""
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ :
else
- echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_c_werror_flag=$ac_save_c_werror_flag
+ CFLAGS="-g"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_prog_cc_g=yes
else
- ac_cv_prog_cc_g=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_c_werror_flag=$ac_save_c_werror_flag
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; }
if test "$ac_test_CFLAGS" = set; then
- CFLAGS="$ac_save_CFLAGS"
+ CFLAGS=$ac_save_CFLAGS
elif test $ac_cv_prog_cc_g = yes; then
if test "$GCC" = yes; then
CFLAGS="-g -O2"
@@ -821,31 +2686,154 @@
CFLAGS=
fi
fi
+{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5
+echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+#include
+#include
+#include
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:827: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_prog_cc_c89=$ac_arg
else
- cat > conftestmake <<\EOF
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c89" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+ x)
+ { echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6; } ;;
+ xno)
+ { echo "$as_me:$LINENO: result: unsupported" >&5
+echo "${ECHO_T}unsupported" >&6; } ;;
+ *)
+ CC="$CC $ac_cv_prog_cc_c89"
+ { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;;
+esac
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; }
+set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
all:
- @echo 'ac_maketemp="${MAKE}"'
-EOF
+ @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+ *@@@%%%=?*=@@@%%%*)
+ eval ac_cv_prog_make_${ac_make}_set=yes;;
+ *)
+ eval ac_cv_prog_make_${ac_make}_set=no;;
+esac
+rm -f conftest.make
fi
-rm -f conftestmake
-fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$ac_t""yes" 1>&6
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
SET_MAKE=
else
- echo "$ac_t""no" 1>&6
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
SET_MAKE="MAKE=${MAKE-make}"
fi
@@ -856,60 +2844,76 @@
# SunOS /usr/etc/install
# IRIX /sbin/install
# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
# AFS /usr/afsws/bin/install, which mishandles nonexistent args
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:865: checking for a BSD compatible install" >&5
+{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; }
if test -z "$INSTALL"; then
-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+if test "${ac_cv_path_install+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":"
- for ac_dir in $PATH; do
- # Account for people who put trailing slashes in PATH elements.
- case "$ac_dir/" in
- /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- if test -f $ac_dir/$ac_prog; then
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
if test $ac_prog = install &&
- grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
:
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
else
- ac_cv_path_install="$ac_dir/$ac_prog -c"
- break 2
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
fi
fi
done
- ;;
- esac
- done
- IFS="$ac_save_IFS"
+ done
+ ;;
+esac
+done
+IFS=$as_save_IFS
+
fi
if test "${ac_cv_path_install+set}" = set; then
- INSTALL="$ac_cv_path_install"
+ INSTALL=$ac_cv_path_install
else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for INSTALL within a source directory, because that will
# break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL="$ac_install_sh"
+ # removed, or if the value is a relative name.
+ INSTALL=$ac_install_sh
fi
fi
-echo "$ac_t""$INSTALL" 1>&6
+{ echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6; }
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
# It thinks the first close brace ends the variable substitution.
test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
@@ -925,30 +2929,27 @@
nessus_lib=-lnessus
XPATH="$DESTDIR$prefix/bin:$PATH"
-
-# Check whether --enable-release or --disable-release was given.
+
+# Check whether --enable-release was given.
if test "${enable_release+set}" = set; then
- enableval="$enable_release"
- CFLAGS="-O6"
+ enableval=$enable_release; CFLAGS="-O6"
fi
-# Check whether --enable-debug or --disable-debug was given.
+# Check whether --enable-debug was given.
if test "${enable_debug+set}" = set; then
- enableval="$enable_debug"
-
+ enableval=$enable_debug;
CFLAGS="-g"; debug_flags="-DDEBUG"
fi
-# Check whether --enable-gtk or --disable-gtk was given.
+# Check whether --enable-gtk was given.
if test "${enable_gtk+set}" = set; then
- enableval="$enable_gtk"
- test "$enable_gtk" = "yes" && gtk_flags="-DUSE_GTK" && cat >> confdefs.h <<\EOF
+ enableval=$enable_gtk; test "$enable_gtk" = "yes" && gtk_flags="-DUSE_GTK" && cat >>confdefs.h <<\_ACEOF
#define USE_GTK 1
-EOF
+_ACEOF
fi
@@ -958,54 +2959,838 @@
### use option --with-ssl to compile in the SSL support
ssl=""
sslcflags=""
-# Check whether --with-ssl or --without-ssl was given.
+
+# Check whether --with-ssl was given.
if test "${with_ssl+set}" = set; then
- withval="$with_ssl"
- with_ssl=$withval
+ withval=$with_ssl; with_ssl=$withval
fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if test "${ac_cv_prog_CPP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer to if __STDC__ is defined, since
+ # exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+{ echo "$as_me:$LINENO: result: $CPP" >&5
+echo "${ECHO_T}$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer to if __STDC__ is defined, since
+ # exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+ Syntax error
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ # Broken: success on invalid input.
+continue
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ :
+else
+ { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&5
+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5
+echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; }
+if test "${ac_cv_path_GREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # Extract the first word of "grep ggrep" to use in msg output
+if test -z "$GREP"; then
+set dummy grep ggrep; ac_prog_name=$2
+if test "${ac_cv_path_GREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_path_GREP_found=false
+# Loop through the user's path and test for each of PROGNAME-LIST
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+ # Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+
+ $ac_path_GREP_found && break 3
+ done
+done
+
+done
+IFS=$as_save_IFS
+
+
+fi
+
+GREP="$ac_cv_path_GREP"
+if test -z "$GREP"; then
+ { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5
+echo "${ECHO_T}$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ echo "$as_me:$LINENO: checking for egrep" >&5
+echo $ECHO_N "checking for egrep... $ECHO_C" >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ # Extract the first word of "egrep" to use in msg output
+if test -z "$EGREP"; then
+set dummy egrep; ac_prog_name=$2
+if test "${ac_cv_path_EGREP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_path_EGREP_found=false
+# Loop through the user's path and test for each of PROGNAME-LIST
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+ # Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ echo $ECHO_N "0123456789$ECHO_C" >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ ac_count=`expr $ac_count + 1`
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+
+ $ac_path_EGREP_found && break 3
+ done
+done
+
+done
+IFS=$as_save_IFS
+
+
+fi
+
+EGREP="$ac_cv_path_EGREP"
+if test -z "$EGREP"; then
+ { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5
+echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+
+ fi
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5
+echo "${ECHO_T}$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
+if test "${ac_cv_header_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+#include
+#include
+#include
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_header_stdc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_header_stdc=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "memchr" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "free" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+ if test "$cross_compiling" = yes; then
+ :
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+#include
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ return 2;
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_header_stdc=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+
+
+fi
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define STDC_HEADERS 1
+_ACEOF
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+
+
+
+
+
+
+
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_Header=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+
+
+for ac_header in gdc.h gd.h png.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+
+rm -f conftest.err conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
succeeded=no
if test -z "$PKG_CONFIG"; then
# Extract the first word of "pkg-config", so it can be a program name with args.
set dummy pkg-config; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:977: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_PKG_CONFIG'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
+if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- case "$PKG_CONFIG" in
- /*)
+ case $PKG_CONFIG in
+ [\\/]* | ?:[\\/]*)
ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
;;
- ?:/*)
- ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a dos path.
- ;;
*)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":"
- ac_dummy="$PATH"
- for ac_dir in $ac_dummy; do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
- break
- fi
- done
- IFS="$ac_save_ifs"
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+IFS=$as_save_IFS
+
test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
;;
esac
fi
-PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
+PKG_CONFIG=$ac_cv_path_PKG_CONFIG
if test -n "$PKG_CONFIG"; then
- echo "$ac_t""$PKG_CONFIG" 1>&6
+ { echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
+echo "${ECHO_T}$PKG_CONFIG" >&6; }
else
- echo "$ac_t""no" 1>&6
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
fi
+
fi
if test "$PKG_CONFIG" = "no" ; then
@@ -1016,33 +3801,36 @@
else
PKG_CONFIG_MIN_VERSION=0.9.0
if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
- echo $ac_n "checking for glib-2.0 >= 2.2.0""... $ac_c" 1>&6
-echo "configure:1021: checking for glib-2.0 >= 2.2.0" >&5
+ { echo "$as_me:$LINENO: checking for glib-2.0 >= 2.2.0" >&5
+echo $ECHO_N "checking for glib-2.0 >= 2.2.0... $ECHO_C" >&6; }
if $PKG_CONFIG --exists "glib-2.0 >= 2.2.0" ; then
- echo "$ac_t""yes" 1>&6
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
succeeded=yes
- echo $ac_n "checking GLIB_CFLAGS""... $ac_c" 1>&6
-echo "configure:1028: checking GLIB_CFLAGS" >&5
+ { echo "$as_me:$LINENO: checking GLIB_CFLAGS" >&5
+echo $ECHO_N "checking GLIB_CFLAGS... $ECHO_C" >&6; }
GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.2.0"`
- echo "$ac_t""$GLIB_CFLAGS" 1>&6
+ { echo "$as_me:$LINENO: result: $GLIB_CFLAGS" >&5
+echo "${ECHO_T}$GLIB_CFLAGS" >&6; }
- echo $ac_n "checking GLIB_LIBS""... $ac_c" 1>&6
-echo "configure:1033: checking GLIB_LIBS" >&5
+ { echo "$as_me:$LINENO: checking GLIB_LIBS" >&5
+echo $ECHO_N "checking GLIB_LIBS... $ECHO_C" >&6; }
GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.2.0"`
- echo "$ac_t""$GLIB_LIBS" 1>&6
+ { echo "$as_me:$LINENO: result: $GLIB_LIBS" >&5
+echo "${ECHO_T}$GLIB_LIBS" >&6; }
else
GLIB_CFLAGS=""
GLIB_LIBS=""
- ## If we have a custom action on failure, don't print errors, but
+ ## If we have a custom action on failure, don't print errors, but
## do set a variable so people can do so.
GLIB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= 2.2.0"`
-
+
fi
-
-
+
+
else
echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer."
echo "*** See http://www.freedesktop.org/software/pkgconfig"
@@ -1061,126 +3849,72 @@
saveCFLAGS="$CFLAGS"
-echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1066: checking how to run the C preprocessor" >&5
-# On Suns, sometimes $CPP names a directory.
-if test -n "$CPP" && test -d "$CPP"; then
- CPP=
-fi
-if test -z "$CPP"; then
-if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; }
+if test "${ac_cv_header_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- # This must be in double quotes, not single quotes, because CPP may get
- # substituted into the Makefile and "${CC-cc}" will confuse make.
- CPP="${CC-cc} -E"
- # On the NeXT, cc -E runs the code through the compiler's parser,
- # not just through cpp.
- cat > conftest.$ac_ext <
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1087: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP="${CC-cc} -E -traditional-cpp"
- cat > conftest.$ac_ext <
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1104: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP="${CC-cc} -nologo -E"
- cat > conftest.$ac_ext <
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1121: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- :
-else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- CPP=/lib/cpp
-fi
-rm -f conftest*
-fi
-rm -f conftest*
-fi
-rm -f conftest*
- ac_cv_prog_CPP="$CPP"
-fi
- CPP="$ac_cv_prog_CPP"
-else
- ac_cv_prog_CPP="$CPP"
-fi
-echo "$ac_t""$CPP" 1>&6
-
-echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1146: checking for ANSI C header files" >&5
-if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
-else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include
#include
#include
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1159: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_header_stdc=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_stdc=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_header_stdc=no
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
-EOF
+
+_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "memchr" >/dev/null 2>&1; then
+ $EGREP "memchr" >/dev/null 2>&1; then
:
else
- rm -rf conftest*
ac_cv_header_stdc=no
fi
rm -f conftest*
@@ -1189,16 +3923,19 @@
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
-EOF
+
+_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "free" >/dev/null 2>&1; then
+ $EGREP "free" >/dev/null 2>&1; then
:
else
- rm -rf conftest*
ac_cv_header_stdc=no
fi
rm -f conftest*
@@ -1207,702 +3944,2050 @@
if test $ac_cv_header_stdc = yes; then
# /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then
:
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
-#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#include
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int main () { int i; for (i = 0; i < 256; i++)
-if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
-exit (0); }
-
-EOF
-if { (eval echo configure:1226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ return 2;
+ return 0;
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
:
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_header_stdc=no
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_header_stdc=no
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+
fi
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
-echo "$ac_t""$ac_cv_header_stdc" 1>&6
-if test $ac_cv_header_stdc = yes; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define STDC_HEADERS 1
-EOF
+_ACEOF
fi
-echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:1250: checking for sys/wait.h that is POSIX.1 compatible" >&5
-if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5
+echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6; }
+if test "${ac_cv_header_sys_wait_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include
#ifndef WEXITSTATUS
-#define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8)
+# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8)
#endif
#ifndef WIFEXITED
-#define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
+# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
#endif
-int main() {
-int s;
-wait (&s);
-s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
-; return 0; }
-EOF
-if { (eval echo configure:1271: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
+
+int
+main ()
+{
+ int s;
+ wait (&s);
+ s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_header_sys_wait_h=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_sys_wait_h=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_header_sys_wait_h=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5
+echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6; }
+if test $ac_cv_header_sys_wait_h = yes; then
-echo "$ac_t""$ac_cv_header_sys_wait_h" 1>&6
-if test $ac_cv_header_sys_wait_h = yes; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define HAVE_SYS_WAIT_H 1
-EOF
+_ACEOF
fi
-echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:1292: checking whether time.h and sys/time.h may both be included" >&5
-if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5
+echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; }
+if test "${ac_cv_header_time+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include
#include
-int main() {
-struct tm *tp;
-; return 0; }
-EOF
-if { (eval echo configure:1306: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
+
+int
+main ()
+{
+if ((struct tm *) 0)
+return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_header_time=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_time=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_header_time=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5
+echo "${ECHO_T}$ac_cv_header_time" >&6; }
+if test $ac_cv_header_time = yes; then
-echo "$ac_t""$ac_cv_header_time" 1>&6
-if test $ac_cv_header_time = yes; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define TIME_WITH_SYS_TIME 1
-EOF
+_ACEOF
fi
+
+
+
+
+
ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:1331: checking for $ac_hdr that defines DIR" >&5
-if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
+ as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5
+echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include <$ac_hdr>
-int main() {
-DIR *dirp = 0;
-; return 0; }
-EOF
-if { (eval echo configure:1344: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- eval "ac_cv_header_dirent_$ac_safe=yes"
+
+int
+main ()
+{
+if ((DIR *) 0)
+return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ eval "$as_ac_Header=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_dirent_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_Header=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-if eval "test \"`echo '$ac_cv_header_dirent_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&6
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
+_ACEOF
+
+ac_header_dirent=$ac_hdr; break
fi
+
done
# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
if test $ac_header_dirent = dirent.h; then
-echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:1369: checking for opendir in -ldir" >&5
-ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ { echo "$as_me:$LINENO: checking for library containing opendir" >&5
+echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; }
+if test "${ac_cv_search_opendir+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_save_LIBS="$LIBS"
-LIBS="-ldir $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-opendir()
-; return 0; }
-EOF
-if { (eval echo configure:1388: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char opendir ();
+int
+main ()
+{
+return opendir ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' dir; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_search_opendir=$ac_res
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext
+ if test "${ac_cv_search_opendir+set}" = set; then
+ break
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- LIBS="$LIBS -ldir"
+done
+if test "${ac_cv_search_opendir+set}" = set; then
+ :
else
- echo "$ac_t""no" 1>&6
+ ac_cv_search_opendir=no
fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
+echo "${ECHO_T}$ac_cv_search_opendir" >&6; }
+ac_res=$ac_cv_search_opendir
+if test "$ac_res" != no; then
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+fi
+
else
-echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:1410: checking for opendir in -lx" >&5
-ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ { echo "$as_me:$LINENO: checking for library containing opendir" >&5
+echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; }
+if test "${ac_cv_search_opendir+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_save_LIBS="$LIBS"
-LIBS="-lx $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-opendir()
-; return 0; }
-EOF
-if { (eval echo configure:1429: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char opendir ();
+int
+main ()
+{
+return opendir ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' x; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_search_opendir=$ac_res
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext
+ if test "${ac_cv_search_opendir+set}" = set; then
+ break
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- LIBS="$LIBS -lx"
+done
+if test "${ac_cv_search_opendir+set}" = set; then
+ :
else
- echo "$ac_t""no" 1>&6
+ ac_cv_search_opendir=no
fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
+echo "${ECHO_T}$ac_cv_search_opendir" >&6; }
+ac_res=$ac_cv_search_opendir
+if test "$ac_res" != no; then
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
fi
-for ac_hdr in unistd.h string.h strings.h sys/sockio.h sys/socketio.h
+fi
+
+
+
+
+
+
+for ac_header in unistd.h string.h strings.h sys/sockio.h sys/socketio.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1455: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1465: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in sys/param.h netinet/tcpip.h netinet/in_systm.h
+
+
+
+for ac_header in sys/param.h netinet/tcpip.h netinet/in_systm.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1495: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1505: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in netinet/ip_udp.h netinet/protocols.h sys/ioctl.h netinet/ip_icmp.h
+
+
+
+
+for ac_header in netinet/ip_udp.h netinet/protocols.h sys/ioctl.h netinet/ip_icmp.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1535: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1545: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in rpc/rpc.h netinet/udp.h dlfcn.h sys/un.h memory.h ctype.h errno.h
+
+
+
+
+
+
+
+for ac_header in rpc/rpc.h netinet/udp.h dlfcn.h sys/un.h memory.h ctype.h errno.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1575: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1585: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in sys/types.h stdlib.h stdio.h sys/filio.h pwd.h
+
+
+
+
+
+for ac_header in sys/types.h stdlib.h stdio.h sys/filio.h pwd.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1615: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1625: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in assert.h netdb.h netinet/in.h arpa/inet.h
+
+
+
+
+for ac_header in assert.h netdb.h netinet/in.h arpa/inet.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1655: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1665: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in poll.h sys/poll.h netinet/ip_tcp.h fcntl.h signal.h limits.h
+
+
+
+
+
+
+for ac_header in poll.h sys/poll.h netinet/ip_tcp.h fcntl.h signal.h limits.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1695: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1705: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in sys/stat.h stat.h net/if.h sys/mman.h sys/resource.h dl.h
+
+
+
+
+
+
+for ac_header in sys/stat.h stat.h net/if.h sys/mman.h sys/resource.h dl.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1735: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1745: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in pty.h termio.h termios.h sgtty.h libutil.h setjmp.h values.h
+
+
+
+
+
+
+
+for ac_header in pty.h termio.h termios.h sgtty.h libutil.h setjmp.h values.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1775: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1785: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
-for ac_hdr in locale.h
+
+for ac_header in locale.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1815: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
case "$host" in
*-irix*)
- cat >> confdefs.h <<\EOF
+ cat >>confdefs.h <<\_ACEOF
#define HAVE_SYS_SOCKET_H 1
-EOF
+_ACEOF
- cat >> confdefs.h <<\EOF
+ cat >>confdefs.h <<\_ACEOF
#define HAVE_NETINET_IP_H 1
-EOF
+_ACEOF
- cat >> confdefs.h <<\EOF
+ cat >>confdefs.h <<\_ACEOF
#define HAVE_NETINET_TCP_H 1
-EOF
+_ACEOF
;;
*)
- for ac_hdr in sys/socket.h netinet/ip.h netinet/tcp.h
+
+
+
+for ac_header in sys/socket.h netinet/ip.h netinet/tcp.h
do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1873: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ { echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
else
- cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1883: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=yes"
+ # Is the header compilable?
+{ echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_header_compiler=yes
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_header_$ac_safe=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_compiler=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
- cat >> confdefs.h <&5
+echo "${ECHO_T}$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+
+ ;;
+esac
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ eval "$as_ac_Header=\$ac_header_preproc"
fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
done
;;
@@ -1911,48 +5996,77 @@
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
# for constant arguments. Useless!
-echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:1916: checking for working alloca.h" >&5
-if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for working alloca.h" >&5
+echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6; }
+if test "${ac_cv_working_alloca_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
-int main() {
-char *p = alloca(2 * sizeof(int));
-; return 0; }
-EOF
-if { (eval echo configure:1928: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_cv_header_alloca_h=yes
+int
+main ()
+{
+char *p = (char *) alloca (2 * sizeof (int));
+ if (p) return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_working_alloca_h=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_header_alloca_h=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_working_alloca_h=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5
+echo "${ECHO_T}$ac_cv_working_alloca_h" >&6; }
+if test $ac_cv_working_alloca_h = yes; then
-echo "$ac_t""$ac_cv_header_alloca_h" 1>&6
-if test $ac_cv_header_alloca_h = yes; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define HAVE_ALLOCA_H 1
-EOF
+_ACEOF
fi
-echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:1949: checking for alloca" >&5
-if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for alloca" >&5
+echo $ECHO_N "checking for alloca... $ECHO_C" >&6; }
+if test "${ac_cv_func_alloca_works+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#ifdef __GNUC__
# define alloca __builtin_alloca
#else
@@ -1960,7 +6074,7 @@
# include
# define alloca _alloca
# else
-# if HAVE_ALLOCA_H
+# ifdef HAVE_ALLOCA_H
# include
# else
# ifdef _AIX
@@ -1974,137 +6088,208 @@
# endif
#endif
-int main() {
-char *p = (char *) alloca(1);
-; return 0; }
-EOF
-if { (eval echo configure:1982: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
+int
+main ()
+{
+char *p = (char *) alloca (1);
+ if (p) return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
ac_cv_func_alloca_works=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_func_alloca_works=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_alloca_works=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5
+echo "${ECHO_T}$ac_cv_func_alloca_works" >&6; }
-echo "$ac_t""$ac_cv_func_alloca_works" 1>&6
if test $ac_cv_func_alloca_works = yes; then
- cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\_ACEOF
#define HAVE_ALLOCA 1
-EOF
+_ACEOF
-fi
+else
+ # The SVR3 libPW and SVR4 libucb both contain incompatible functions
+# that cause trouble. Some versions do not even contain alloca or
+# contain a buggy version. If you still want to use their alloca,
+# use ar to extract alloca.o from them instead of compiling alloca.c.
-if test $ac_cv_func_alloca_works = no; then
- # The SVR3 libPW and SVR4 libucb both contain incompatible functions
- # that cause trouble. Some versions do not even contain alloca or
- # contain a buggy version. If you still want to use their alloca,
- # use ar to extract alloca.o from them instead of compiling alloca.c.
- ALLOCA=alloca.${ac_objext}
- cat >> confdefs.h <<\EOF
+ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
+
+cat >>confdefs.h <<\_ACEOF
#define C_ALLOCA 1
-EOF
+_ACEOF
-echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:2014: checking whether alloca needs Cray hooks" >&5
-if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5
+echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6; }
+if test "${ac_cv_os_cray+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#if defined CRAY && ! defined CRAY2
webecray
#else
wenotbecray
#endif
-EOF
+_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "webecray" >/dev/null 2>&1; then
- rm -rf conftest*
+ $EGREP "webecray" >/dev/null 2>&1; then
ac_cv_os_cray=yes
else
- rm -rf conftest*
ac_cv_os_cray=no
fi
rm -f conftest*
fi
-
-echo "$ac_t""$ac_cv_os_cray" 1>&6
+{ echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5
+echo "${ECHO_T}$ac_cv_os_cray" >&6; }
if test $ac_cv_os_cray = yes; then
-for ac_func in _getb67 GETB67 getb67; do
- echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2044: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ for ac_func in _getb67 GETB67 getb67; do
+ as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
-#else
-$ac_func();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2072: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- cat >> confdefs.h <>confdefs.h <<_ACEOF
#define CRAY_STACKSEG_END $ac_func
-EOF
+_ACEOF
- break
-else
- echo "$ac_t""no" 1>&6
+ break
fi
-done
+ done
fi
-echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:2099: checking stack direction for C alloca" >&5
-if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking stack direction for C alloca" >&5
+echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6; }
+if test "${ac_cv_c_stack_direction+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test "$cross_compiling" = yes; then
ac_cv_c_stack_direction=0
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+int
find_stack_direction ()
{
static char *addr = 0;
@@ -2117,49 +6302,79 @@
else
return (&dummy > addr) ? 1 : -1;
}
+
+int
main ()
{
- exit (find_stack_direction() < 0);
+ return find_stack_direction () < 0;
}
-EOF
-if { (eval echo configure:2126: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
ac_cv_c_stack_direction=1
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_c_stack_direction=-1
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_c_stack_direction=-1
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5
+echo "${ECHO_T}$ac_cv_c_stack_direction" >&6; }
-echo "$ac_t""$ac_cv_c_stack_direction" 1>&6
-cat >> confdefs.h <>confdefs.h <<_ACEOF
#define STACK_DIRECTION $ac_cv_c_stack_direction
-EOF
+_ACEOF
+
fi
-echo $ac_n "checking for wait3 that fills in rusage""... $ac_c" 1>&6
-echo "configure:2148: checking for wait3 that fills in rusage" >&5
-if eval "test \"`echo '$''{'ac_cv_func_wait3_rusage'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for wait3 that fills in rusage" >&5
+echo $ECHO_N "checking for wait3 that fills in rusage... $ECHO_C" >&6; }
+if test "${ac_cv_func_wait3_rusage+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test "$cross_compiling" = yes; then
ac_cv_func_wait3_rusage=no
else
- cat > conftest.$ac_ext <
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
#include
#include
-#include
+#include
/* HP-UX has wait3 but does not fill in rusage at all. */
-main() {
+int
+main ()
+{
struct rusage r;
int i;
/* Use a field that we can force nonzero --
@@ -2170,668 +6385,1915 @@
r.ru_stime.tv_sec = 0;
r.ru_stime.tv_usec = 0;
r.ru_majflt = r.ru_minflt = 0;
- switch (fork()) {
- case 0: /* Child. */
- sleep(1); /* Give up the CPU. */
- _exit(0);
- case -1: _exit(0); /* What can we do? */
- default: /* Parent. */
- wait3(&i, 0, &r);
- sleep(2); /* Avoid "text file busy" from rm on fast HP-UX machines. */
- exit(r.ru_nvcsw == 0 && r.ru_majflt == 0 && r.ru_minflt == 0
- && r.ru_stime.tv_sec == 0 && r.ru_stime.tv_usec == 0);
- }
+ switch (fork ())
+ {
+ case 0: /* Child. */
+ sleep(1); /* Give up the CPU. */
+ _exit(0);
+ break;
+ case -1: /* What can we do? */
+ _exit(0);
+ break;
+ default: /* Parent. */
+ wait3(&i, 0, &r);
+ /* Avoid "text file busy" from rm on fast HP-UX machines. */
+ sleep(2);
+ return (r.ru_nvcsw == 0 && r.ru_majflt == 0 && r.ru_minflt == 0
+ && r.ru_stime.tv_sec == 0 && r.ru_stime.tv_usec == 0);
+ }
}
-EOF
-if { (eval echo configure:2187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
ac_cv_func_wait3_rusage=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_func_wait3_rusage=no
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_func_wait3_rusage=no
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_func_wait3_rusage" >&5
+echo "${ECHO_T}$ac_cv_func_wait3_rusage" >&6; }
+if test $ac_cv_func_wait3_rusage = yes; then
-echo "$ac_t""$ac_cv_func_wait3_rusage" 1>&6
-if test $ac_cv_func_wait3_rusage = yes; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define HAVE_WAIT3 1
-EOF
+_ACEOF
fi
+
+
+
+
for ac_func in waitpid wait4 mmap atexit
do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2212: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
-#else
-$ac_func();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2240: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- cat >> confdefs.h <&6
fi
done
+
+
+
+
+
+
for ac_func in lstat memmove gettimeofday gethrtime getrusage rand
do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2267: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
-#else
-$ac_func();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2295: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- cat >> confdefs.h <&6
fi
done
+
+
+
+
for ac_func in strchr memcpy select poll
do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2322: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
-#else
-$ac_func();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2350: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- cat >> confdefs.h <&6
fi
done
-echo $ac_n "checking for vsnprintf""... $ac_c" 1>&6
-echo "configure:2375: checking for vsnprintf" >&5
-if eval "test \"`echo '$''{'ac_cv_func_vsnprintf'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for vsnprintf" >&5
+echo $ECHO_N "checking for vsnprintf... $ECHO_C" >&6; }
+if test "${ac_cv_func_vsnprintf+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define vsnprintf to an innocuous variant, in case declares vsnprintf.
+ For example, HP-UX 11i declares gettimeofday. */
+#define vsnprintf innocuous_vsnprintf
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char vsnprintf(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char vsnprintf();
+ which can conflict with char vsnprintf (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef vsnprintf
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char vsnprintf ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_vsnprintf) || defined (__stub___vsnprintf)
+#if defined __stub_vsnprintf || defined __stub___vsnprintf
choke me
-#else
-vsnprintf();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2403: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_vsnprintf=yes"
+int
+main ()
+{
+return vsnprintf ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_func_vsnprintf=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_vsnprintf=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_vsnprintf=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
-
-if eval "test \"`echo '$ac_cv_func_'vsnprintf`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- cat >> confdefs.h <<\EOF
+{ echo "$as_me:$LINENO: result: $ac_cv_func_vsnprintf" >&5
+echo "${ECHO_T}$ac_cv_func_vsnprintf" >&6; }
+if test $ac_cv_func_vsnprintf = yes; then
+ cat >>confdefs.h <<\_ACEOF
#define HAVE_VSNPRINTF 1
-EOF
+_ACEOF
-else
- echo "$ac_t""no" 1>&6
fi
+
+
+
+
+
for ac_func in bzero bcopy setsid rint mkstemp
do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2428: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
-#else
-$ac_func();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2456: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- cat >> confdefs.h <&6
fi
done
+
+
+
+
for ac_func in addr2ascii inet_neta setproctitle _exit
do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2483: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case declares $ac_func.
+ For example, HP-UX 11i declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func();
+ which can conflict with char $ac_func (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+#if defined __stub_$ac_func || defined __stub___$ac_func
choke me
-#else
-$ac_func();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2511: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=yes"
+int
+main ()
+{
+return $ac_func ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ eval "$as_ac_var=yes"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_$ac_func=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_var=no"
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
- cat >> confdefs.h <&6
fi
done
-echo $ac_n "checking size of unsigned int""... $ac_c" 1>&6
-echo "configure:2537: checking size of unsigned int" >&5
-if eval "test \"`echo '$''{'ac_cv_sizeof_unsigned_int'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for unsigned int" >&5
+echo $ECHO_N "checking for unsigned int... $ECHO_C" >&6; }
+if test "${ac_cv_type_unsigned_int+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+typedef unsigned int ac__type_new_;
+int
+main ()
+{
+if ((ac__type_new_ *) 0)
+ return 0;
+if (sizeof (ac__type_new_))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_type_unsigned_int=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_unsigned_int=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_int" >&5
+echo "${ECHO_T}$ac_cv_type_unsigned_int" >&6; }
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ echo "$as_me:$LINENO: checking size of unsigned int" >&5
+echo $ECHO_N "checking size of unsigned int... $ECHO_C" >&6; }
+if test "${ac_cv_sizeof_unsigned_int+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
+ # Depending upon the size, compute the lo and hi bounds.
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned int ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_lo=0 ac_mid=0
+ while :; do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned int ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_hi=$ac_mid; break
else
- cat > conftest.$ac_ext <&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_lo=`expr $ac_mid + 1`
+ if test $ac_lo -le $ac_mid; then
+ ac_lo= ac_hi=
+ break
+ fi
+ ac_mid=`expr 2 '*' $ac_mid + 1`
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned int ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_hi=-1 ac_mid=-1
+ while :; do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned int ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_lo=$ac_mid; break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_hi=`expr '(' $ac_mid ')' - 1`
+ if test $ac_mid -le $ac_hi; then
+ ac_lo= ac_hi=
+ break
+ fi
+ ac_mid=`expr 2 '*' $ac_mid`
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_lo= ac_hi=
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+ ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned int ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_hi=$ac_mid
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_lo=`expr '(' $ac_mid ')' + 1`
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+case $ac_lo in
+?*) ac_cv_sizeof_unsigned_int=$ac_lo;;
+'') if test "$ac_cv_type_unsigned_int" = yes; then
+ { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int)
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute sizeof (unsigned int)
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+ else
+ ac_cv_sizeof_unsigned_int=0
+ fi ;;
+esac
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned int ac__type_sizeof_;
+static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); }
+static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); }
#include
-#include
-main()
+#include
+int
+main ()
{
- FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
- fprintf(f, "%d\n", sizeof(unsigned int));
- exit(0);
+
+ FILE *f = fopen ("conftest.val", "w");
+ if (! f)
+ return 1;
+ if (((long int) (sizeof (ac__type_sizeof_))) < 0)
+ {
+ long int i = longval ();
+ if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ return 1;
+ fprintf (f, "%ld\n", i);
+ }
+ else
+ {
+ unsigned long int i = ulongval ();
+ if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ return 1;
+ fprintf (f, "%lu\n", i);
+ }
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
}
-EOF
-if { (eval echo configure:2557: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_sizeof_unsigned_int=`cat conftestval`
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_sizeof_unsigned_int=`cat conftest.val`
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_sizeof_unsigned_int=0
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+if test "$ac_cv_type_unsigned_int" = yes; then
+ { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned int)
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute sizeof (unsigned int)
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+ else
+ ac_cv_sizeof_unsigned_int=0
+ fi
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+rm -f conftest.val
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_int" >&5
+echo "${ECHO_T}$ac_cv_sizeof_unsigned_int" >&6; }
-fi
-echo "$ac_t""$ac_cv_sizeof_unsigned_int" 1>&6
-cat >> confdefs.h <>confdefs.h <<_ACEOF
#define SIZEOF_UNSIGNED_INT $ac_cv_sizeof_unsigned_int
-EOF
+_ACEOF
-echo $ac_n "checking size of unsigned long""... $ac_c" 1>&6
-echo "configure:2577: checking size of unsigned long" >&5
-if eval "test \"`echo '$''{'ac_cv_sizeof_unsigned_long'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for unsigned long" >&5
+echo $ECHO_N "checking for unsigned long... $ECHO_C" >&6; }
+if test "${ac_cv_type_unsigned_long+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+typedef unsigned long ac__type_new_;
+int
+main ()
+{
+if ((ac__type_new_ *) 0)
+ return 0;
+if (sizeof (ac__type_new_))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_type_unsigned_long=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_unsigned_long=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long" >&5
+echo "${ECHO_T}$ac_cv_type_unsigned_long" >&6; }
+
+# The cast to long int works around a bug in the HP C Compiler
+# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
+# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
+# This bug is HP SR number 8606223364.
+{ echo "$as_me:$LINENO: checking size of unsigned long" >&5
+echo $ECHO_N "checking size of unsigned long... $ECHO_C" >&6; }
+if test "${ac_cv_sizeof_unsigned_long+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
+ # Depending upon the size, compute the lo and hi bounds.
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned long ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_lo=0 ac_mid=0
+ while :; do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned long ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_hi=$ac_mid; break
else
- cat > conftest.$ac_ext <&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_lo=`expr $ac_mid + 1`
+ if test $ac_lo -le $ac_mid; then
+ ac_lo= ac_hi=
+ break
+ fi
+ ac_mid=`expr 2 '*' $ac_mid + 1`
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned long ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_hi=-1 ac_mid=-1
+ while :; do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned long ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_lo=$ac_mid; break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_hi=`expr '(' $ac_mid ')' - 1`
+ if test $ac_mid -le $ac_hi; then
+ ac_lo= ac_hi=
+ break
+ fi
+ ac_mid=`expr 2 '*' $ac_mid`
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_lo= ac_hi=
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+# Binary search between lo and hi bounds.
+while test "x$ac_lo" != "x$ac_hi"; do
+ ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned long ac__type_sizeof_;
+int
+main ()
+{
+static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)];
+test_array [0] = 0
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_hi=$ac_mid
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_lo=`expr '(' $ac_mid ')' + 1`
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+case $ac_lo in
+?*) ac_cv_sizeof_unsigned_long=$ac_lo;;
+'') if test "$ac_cv_type_unsigned_long" = yes; then
+ { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long)
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute sizeof (unsigned long)
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+ else
+ ac_cv_sizeof_unsigned_long=0
+ fi ;;
+esac
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+ typedef unsigned long ac__type_sizeof_;
+static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); }
+static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); }
#include
-#include
-main()
+#include
+int
+main ()
{
- FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
- fprintf(f, "%d\n", sizeof(unsigned long));
- exit(0);
+
+ FILE *f = fopen ("conftest.val", "w");
+ if (! f)
+ return 1;
+ if (((long int) (sizeof (ac__type_sizeof_))) < 0)
+ {
+ long int i = longval ();
+ if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ return 1;
+ fprintf (f, "%ld\n", i);
+ }
+ else
+ {
+ unsigned long int i = ulongval ();
+ if (i != ((long int) (sizeof (ac__type_sizeof_))))
+ return 1;
+ fprintf (f, "%lu\n", i);
+ }
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
}
-EOF
-if { (eval echo configure:2597: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- ac_cv_sizeof_unsigned_long=`cat conftestval`
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_sizeof_unsigned_long=`cat conftest.val`
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_sizeof_unsigned_long=0
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+if test "$ac_cv_type_unsigned_long" = yes; then
+ { { echo "$as_me:$LINENO: error: cannot compute sizeof (unsigned long)
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute sizeof (unsigned long)
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+ else
+ ac_cv_sizeof_unsigned_long=0
+ fi
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+rm -f conftest.val
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_unsigned_long" >&5
+echo "${ECHO_T}$ac_cv_sizeof_unsigned_long" >&6; }
-fi
-echo "$ac_t""$ac_cv_sizeof_unsigned_long" 1>&6
-cat >> confdefs.h <>confdefs.h <<_ACEOF
#define SIZEOF_UNSIGNED_LONG $ac_cv_sizeof_unsigned_long
-EOF
+_ACEOF
-echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
-echo "configure:2617: checking whether byte ordering is bigendian" >&5
-if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5
+echo $ECHO_N "checking whether byte ordering is bigendian... $ECHO_C" >&6; }
+if test "${ac_cv_c_bigendian+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_cv_c_bigendian=unknown
-# See if sys/param.h defines the BYTE_ORDER macro.
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include
-int main() {
-#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
+int
+main ()
+{
+#if ! (defined BYTE_ORDER && defined BIG_ENDIAN && defined LITTLE_ENDIAN \
+ && BYTE_ORDER && BIG_ENDIAN && LITTLE_ENDIAN)
bogus endian macros
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2635: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
# It does; now see whether it defined to BIG_ENDIAN or not.
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include
-int main() {
+int
+main ()
+{
#if BYTE_ORDER != BIG_ENDIAN
not big endian
#endif
-; return 0; }
-EOF
-if { (eval echo configure:2650: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_c_bigendian=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_cv_c_bigendian=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_c_bigendian=no
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # It does not; compile a test program.
+if test "$cross_compiling" = yes; then
+ # try to guess the endianness by grepping values into an object file
+ ac_cv_c_bigendian=unknown
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+short int ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
+short int ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
+void _ascii () { char *s = (char *) ascii_mm; s = (char *) ascii_ii; }
+short int ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
+short int ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
+void _ebcdic () { char *s = (char *) ebcdic_mm; s = (char *) ebcdic_ii; }
+int
+main ()
+{
+ _ascii (); _ebcdic ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ if grep BIGenDianSyS conftest.$ac_objext >/dev/null ; then
+ ac_cv_c_bigendian=yes
fi
-rm -f conftest*
-if test $ac_cv_c_bigendian = unknown; then
-if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
+if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
+ if test "$ac_cv_c_bigendian" = unknown; then
+ ac_cv_c_bigendian=no
+ else
+ # finding both strings is unlikely to happen, but who knows?
+ ac_cv_c_bigendian=unknown
+ fi
+fi
else
- cat > conftest.$ac_ext <&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+int
+main ()
+{
+
/* Are we little or big endian? From Harbison&Steele. */
union
{
- long l;
- char c[sizeof (long)];
+ long int l;
+ char c[sizeof (long int)];
} u;
u.l = 1;
- exit (u.c[sizeof (long) - 1] == 1);
+ return u.c[sizeof (long int) - 1] == 1;
+
+ ;
+ return 0;
}
-EOF
-if { (eval echo configure:2683: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
ac_cv_c_bigendian=no
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- ac_cv_c_bigendian=yes
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_c_bigendian=yes
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+
fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5
+echo "${ECHO_T}$ac_cv_c_bigendian" >&6; }
+case $ac_cv_c_bigendian in
+ yes)
-echo "$ac_t""$ac_cv_c_bigendian" 1>&6
-if test $ac_cv_c_bigendian = yes; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define WORDS_BIGENDIAN 1
-EOF
+_ACEOF
+ ;;
+ no)
+ ;;
+ *)
+ { { echo "$as_me:$LINENO: error: unknown endianness
+presetting ac_cv_c_bigendian=no (or yes) will help" >&5
+echo "$as_me: error: unknown endianness
+presetting ac_cv_c_bigendian=no (or yes) will help" >&2;}
+ { (exit 1); exit 1; }; } ;;
+esac
-fi
-
-echo $ac_n "checking for time_t""... $ac_c" 1>&6
-echo "configure:2707: checking for time_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_time_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for time_t" >&5
+echo $ECHO_N "checking for time_t... $ECHO_C" >&6; }
+if test "${ac_cv_type_time_t+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <
-#if STDC_HEADERS
-#include
-#include
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "(^|[^a-zA-Z_0-9])time_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
- rm -rf conftest*
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+typedef time_t ac__type_new_;
+int
+main ()
+{
+if ((ac__type_new_ *) 0)
+ return 0;
+if (sizeof (ac__type_new_))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_type_time_t=yes
else
- rm -rf conftest*
- ac_cv_type_time_t=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_time_t=no
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$ac_t""$ac_cv_type_time_t" 1>&6
-if test $ac_cv_type_time_t = no; then
- cat >> confdefs.h <<\EOF
+{ echo "$as_me:$LINENO: result: $ac_cv_type_time_t" >&5
+echo "${ECHO_T}$ac_cv_type_time_t" >&6; }
+if test $ac_cv_type_time_t = yes; then
+ :
+else
+
+cat >>confdefs.h <<_ACEOF
#define time_t int
-EOF
+_ACEOF
fi
-echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:2740: checking for pid_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for pid_t" >&5
+echo $ECHO_N "checking for pid_t... $ECHO_C" >&6; }
+if test "${ac_cv_type_pid_t+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <
-#if STDC_HEADERS
-#include
-#include
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "(^|[^a-zA-Z_0-9])pid_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
- rm -rf conftest*
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+typedef pid_t ac__type_new_;
+int
+main ()
+{
+if ((ac__type_new_ *) 0)
+ return 0;
+if (sizeof (ac__type_new_))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_type_pid_t=yes
else
- rm -rf conftest*
- ac_cv_type_pid_t=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_pid_t=no
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$ac_t""$ac_cv_type_pid_t" 1>&6
-if test $ac_cv_type_pid_t = no; then
- cat >> confdefs.h <<\EOF
+{ echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5
+echo "${ECHO_T}$ac_cv_type_pid_t" >&6; }
+if test $ac_cv_type_pid_t = yes; then
+ :
+else
+
+cat >>confdefs.h <<_ACEOF
#define pid_t int
-EOF
+_ACEOF
fi
-echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:2773: checking for size_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for size_t" >&5
+echo $ECHO_N "checking for size_t... $ECHO_C" >&6; }
+if test "${ac_cv_type_size_t+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <
-#if STDC_HEADERS
-#include
-#include
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "(^|[^a-zA-Z_0-9])size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
- rm -rf conftest*
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+typedef size_t ac__type_new_;
+int
+main ()
+{
+if ((ac__type_new_ *) 0)
+ return 0;
+if (sizeof (ac__type_new_))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
ac_cv_type_size_t=yes
else
- rm -rf conftest*
- ac_cv_type_size_t=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type_size_t=no
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$ac_t""$ac_cv_type_size_t" 1>&6
-if test $ac_cv_type_size_t = no; then
- cat >> confdefs.h <<\EOF
-#define size_t unsigned
-EOF
+{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
+echo "${ECHO_T}$ac_cv_type_size_t" >&6; }
+if test $ac_cv_type_size_t = yes; then
+ :
+else
+cat >>confdefs.h <<_ACEOF
+#define size_t unsigned int
+_ACEOF
+
fi
-echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:2806: checking for uid_t in sys/types.h" >&5
-if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+{ echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5
+echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6; }
+if test "${ac_cv_type_uid_t+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
-EOF
+
+_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- egrep "uid_t" >/dev/null 2>&1; then
- rm -rf conftest*
+ $EGREP "uid_t" >/dev/null 2>&1; then
ac_cv_type_uid_t=yes
else
- rm -rf conftest*
ac_cv_type_uid_t=no
fi
rm -f conftest*
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
+echo "${ECHO_T}$ac_cv_type_uid_t" >&6; }
+if test $ac_cv_type_uid_t = no; then
-echo "$ac_t""$ac_cv_type_uid_t" 1>&6
-if test $ac_cv_type_uid_t = no; then
- cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\_ACEOF
#define uid_t int
-EOF
+_ACEOF
- cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\_ACEOF
#define gid_t int
-EOF
+_ACEOF
fi
@@ -2860,14 +8322,14 @@
break;
fi
done
-
+
test -z "$with_ssl" && {
for ac_dir in \
/usr \
/usr/local \
/sw \
; \
- do
+ do
if test -r "$ac_dir/include/openssl/ssl.h" ; then
with_ssl=$ac_dir
break;
@@ -2878,44 +8340,69 @@
if test -n "$with_ssl" -a "$with_ssl" != "no"
then
- echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "configure:2883: checking for dlopen in -ldl" >&5
-ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ { echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5
+echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6; }
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_save_LIBS="$LIBS"
+ ac_check_lib_save_LIBS=$LIBS
LIBS="-ldl $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-dlopen()
-; return 0; }
-EOF
-if { (eval echo configure:2902: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dlopen ();
+int
+main ()
+{
+return dlopen ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_dl_dlopen=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dl_dlopen=no
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5
+echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6; }
+if test $ac_cv_lib_dl_dlopen = yes; then
withdl="-ldl"
-else
- echo "$ac_t""no" 1>&6
fi
# With the autoconfigure above, the only time this is going to be
@@ -2946,7 +8433,7 @@
echo "Enabling SSLeay support in $with_ssl"
sslcflags="-I$with_ssl/include"
fi
-
+
if test `uname` = "IRIX" -a "$with_ssl" = "/usr/freeware" ;
then
ssl="-L$with_ssl/lib32 -lssl -lcrypto $withdl"
@@ -2955,25 +8442,32 @@
fi
else
with_ssl=""
- { echo "configure: error: Could not find OpenSSL and OpenSSL headers on your system" 1>&2; exit 1; }
+ { { echo "$as_me:$LINENO: error: Could not find OpenSSL and OpenSSL headers on your system" >&5
+echo "$as_me: error: Could not find OpenSSL and OpenSSL headers on your system" >&2;}
+ { (exit 1); exit 1; }; }
fi
test -n "$with_ssl" && {
test "x$use_cipher" = "xyes" -o -z "$use_cipher"
}
-
-
-test -n "$forcessl" -a -z "$with_ssl" && { echo "configure: error: "OpenSSL not found"" 1>&2; exit 1; }
+test -n "$forcessl" -a -z "$with_ssl" && { { echo "$as_me:$LINENO: error: \"OpenSSL not found\"" >&5
+echo "$as_me: error: \"OpenSSL not found\"" >&2;}
+ { (exit 1); exit 1; }; }
-echo $ac_n "checking for struct timeval""... $ac_c" 1>&6
-echo "configure:2974: checking for struct timeval" >&5
-cat > conftest.$ac_ext <&5
+echo $ECHO_N "checking for struct timeval... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#ifdef TIME_WITH_SYS_TIME
#include
#include
@@ -2984,34 +8478,59 @@
#include
#endif
#endif
-int main() {
+int
+main ()
+{
static struct timeval x; x.tv_sec = x.tv_usec;
-; return 0; }
-EOF
-if { (eval echo configure:2992: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""yes" 1>&6
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
HAVE_TIMEVAL=yes
- cat >> confdefs.h <<\EOF
+ cat >>confdefs.h <<\_ACEOF
#define HAVE_TIMEVAL 1
-EOF
+_ACEOF
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- echo "$ac_t""no" 1>&6
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
HAVE_TIMEVAL=no
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
if test "x$HAVE_TIMEVAL" = xyes; then
-echo $ac_n "checking whether gettimeofday can't accept two arguments""... $ac_c" 1>&6
-echo "configure:3012: checking whether gettimeofday can't accept two arguments" >&5
-cat > conftest.$ac_ext <&5
+echo $ECHO_N "checking whether gettimeofday can't accept two arguments... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#ifdef TIME_WITH_SYS_TIME
#include
@@ -3023,29 +8542,53 @@
#include
#endif
#endif
-
-int main() {
+int
+main ()
+{
+
struct timeval time;
struct timezone dummy;
gettimeofday (&time, &dummy);
-; return 0; }
-EOF
-if { (eval echo configure:3036: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- echo "$ac_t""no" 1>&6
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- echo "$ac_t""yes" 1>&6
- cat >> confdefs.h <<\EOF
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+ cat >>confdefs.h <<\_ACEOF
#define GETTIMEOFDAY_ONE_ARGUMENT 1
-EOF
+_ACEOF
fi
-rm -f conftest*
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
@@ -3053,22 +8596,29 @@
#
# RedHat 8.0 ships with a broken regexp library (Nessus bug#90)
#
-test -f /etc/redhat-release &&
+test -f /etc/redhat-release &&
{
cat /etc/redhat-release | egrep "(8\.0|9)" >/dev/null && BROKEN_REGEXP=y
}
-
+
test -z "$BROKEN_REGEXP" &&
{
-echo $ac_n "checking for a working regexp implementation""... $ac_c" 1>&6
-echo "configure:3066: checking for a working regexp implementation" >&5
+{ echo "$as_me:$LINENO: checking for a working regexp implementation" >&5
+echo $ECHO_N "checking for a working regexp implementation... $ECHO_C" >&6; }
if test "$cross_compiling" = yes; then
- { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
+ { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run test program while cross compiling
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
#include
@@ -3080,7 +8630,7 @@
char fastmap[1 << 8];
struct re_pattern_buffer pb;
struct re_registers regs;
-
+
pb.allocated = 8;
pb.buffer = malloc(8);
pb.fastmap = fastmap;
@@ -3088,40 +8638,68 @@
re_set_syntax(RE_SYNTAX_POSIX_EGREP);
re_compile_pattern(".*nessus.*", strlen(".*nessus.*"), &pb);
re_compile_fastmap(&pb);
- return re_search(&pb,
+ return re_search(&pb,
"i use nessus everyday",
strlen("i use nessus everyday"),
- 0,
+ 0,
strlen("i use nessus everyday"),
®s);
}
-EOF
-if { (eval echo configure:3101: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
- echo "$ac_t""yes" 1>&6;cat >> confdefs.h <<\EOF
+_ACEOF
+rm -f conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; };cat >>confdefs.h <<\_ACEOF
#define HAVE_REGEX_SUPPORT 1
-EOF
+_ACEOF
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -fr conftest*
- echo "$ac_t""no" 1>&6
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+{ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
fi
-rm -fr conftest*
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
fi
+
}
-echo $ac_n "checking GNU gettext available""... $ac_c" 1>&6
-echo "configure:3120: checking GNU gettext available" >&5
-cat > conftest.$ac_ext <&5
+echo $ECHO_N "checking GNU gettext available... $ECHO_C" >&6; }
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
#include
-int main() {
+int
+main ()
+{
extern int _nl_msg_cat_cntr;
extern int *_nl_domain_bindings;
int
@@ -3130,35 +8708,51 @@
bindtextdomain ("", "");
return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings;
}
-; return 0; }
-EOF
-if { (eval echo configure:3136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
- rm -rf conftest*
- echo "$ac_t""yes" 1>&6; cat >> confdefs.h <<\EOF
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }; cat >>confdefs.h <<\_ACEOF
#define HAVE_GNU_GETTEXT 1
-EOF
+_ACEOF
gettext_flags="-DHAVE_GNU_GETTEXT"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- echo "$ac_t""no" 1>&6
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
fi
-rm -f conftest*
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-# If we find X, set shell vars x_includes and x_libraries to the
-# paths, otherwise set no_x=yes.
-# Uses ac_ vars as temps to allow command line to override cache and checks.
-# --without-x overrides everything else, but does not touch the cache.
-echo $ac_n "checking for X""... $ac_c" 1>&6
-echo "configure:3157: checking for X" >&5
-# Check whether --with-x or --without-x was given.
+{ echo "$as_me:$LINENO: checking for X" >&5
+echo $ECHO_N "checking for X... $ECHO_C" >&6; }
+
+
+# Check whether --with-x was given.
if test "${with_x+set}" = set; then
- withval="$with_x"
- :
+ withval=$with_x;
fi
# $have_x is `yes', `no', `disabled', or empty when we do not yet know.
@@ -3166,227 +8760,237 @@
# The user explicitly disabled X.
have_x=disabled
else
- if test "x$x_includes" != xNONE && test "x$x_libraries" != xNONE; then
- # Both variables are already set.
- have_x=yes
- else
-if eval "test \"`echo '$''{'ac_cv_have_x'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ case $x_includes,$x_libraries in #(
+ *\'*) { { echo "$as_me:$LINENO: error: Cannot use X directory names containing '" >&5
+echo "$as_me: error: Cannot use X directory names containing '" >&2;}
+ { (exit 1); exit 1; }; };; #(
+ *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
# One or both of the vars are not set, and there is no cached value.
-ac_x_includes=NO ac_x_libraries=NO
-rm -fr conftestdir
-if mkdir conftestdir; then
- cd conftestdir
- # Make sure to not put "make" in the Imakefile rules, since we grep it out.
- cat > Imakefile <<'EOF'
-acfindx:
- @echo 'ac_im_incroot="${INCROOT}"; ac_im_usrlibdir="${USRLIBDIR}"; ac_im_libdir="${LIBDIR}"'
-EOF
- if (xmkmf) >/dev/null 2>/dev/null && test -f Makefile; then
+ac_x_includes=no ac_x_libraries=no
+rm -f -r conftest.dir
+if mkdir conftest.dir; then
+ cd conftest.dir
+ cat >Imakefile <<'_ACEOF'
+incroot:
+ @echo incroot='${INCROOT}'
+usrlibdir:
+ @echo usrlibdir='${USRLIBDIR}'
+libdir:
+ @echo libdir='${LIBDIR}'
+_ACEOF
+ if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then
# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
- eval `${MAKE-make} acfindx 2>/dev/null | grep -v make`
+ for ac_var in incroot usrlibdir libdir; do
+ eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`"
+ done
# Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR.
for ac_extension in a so sl; do
- if test ! -f $ac_im_usrlibdir/libX11.$ac_extension &&
- test -f $ac_im_libdir/libX11.$ac_extension; then
- ac_im_usrlibdir=$ac_im_libdir; break
+ if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" &&
+ test -f "$ac_im_libdir/libX11.$ac_extension"; then
+ ac_im_usrlibdir=$ac_im_libdir; break
fi
done
# Screen out bogus values from the imake configuration. They are
# bogus both because they are the default anyway, and because
# using them would break gcc on systems where it needs fixed includes.
- case "$ac_im_incroot" in
- /usr/include) ;;
- *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes="$ac_im_incroot" ;;
+ case $ac_im_incroot in
+ /usr/include) ac_x_includes= ;;
+ *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;;
esac
- case "$ac_im_usrlibdir" in
+ case $ac_im_usrlibdir in
/usr/lib | /lib) ;;
- *) test -d "$ac_im_usrlibdir" && ac_x_libraries="$ac_im_usrlibdir" ;;
+ *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;;
esac
fi
cd ..
- rm -fr conftestdir
+ rm -f -r conftest.dir
fi
-if test "$ac_x_includes" = NO; then
- # Guess where to find include files, by looking for this one X11 .h file.
- test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h
+# Standard set of common directories for X headers.
+# Check X11 before X11Rn because it is often a symlink to the current release.
+ac_x_header_dirs='
+/usr/X11/include
+/usr/X11R6/include
+/usr/X11R5/include
+/usr/X11R4/include
+/usr/include/X11
+/usr/include/X11R6
+/usr/include/X11R5
+/usr/include/X11R4
+
+/usr/local/X11/include
+/usr/local/X11R6/include
+/usr/local/X11R5/include
+/usr/local/X11R4/include
+
+/usr/local/include/X11
+/usr/local/include/X11R6
+/usr/local/include/X11R5
+/usr/local/include/X11R4
+
+/usr/X386/include
+/usr/x386/include
+/usr/XFree86/include/X11
+
+/usr/include
+/usr/local/include
+/usr/unsupported/include
+/usr/athena/include
+/usr/local/x11r5/include
+/usr/lpp/Xamples/include
+
+/usr/openwin/include
+/usr/openwin/share/include'
+
+if test "$ac_x_includes" = no; then
+ # Guess where to find include files, by looking for Xlib.h.
# First, try using that file with no special directory specified.
-cat > conftest.$ac_ext <
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3224: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
- rm -rf conftest*
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+_ACEOF
+if { (ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then
# We can compile using X headers with no special include directory.
ac_x_includes=
else
- echo "$ac_err" >&5
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- # Look for the header file in a standard set of common directories.
-# Check X11 before X11Rn because it is often a symlink to the current release.
- for ac_dir in \
- /usr/X11/include \
- /usr/X11R6/include \
- /usr/X11R5/include \
- /usr/X11R4/include \
- \
- /usr/include/X11 \
- /usr/include/X11R6 \
- /usr/include/X11R5 \
- /usr/include/X11R4 \
- \
- /usr/local/X11/include \
- /usr/local/X11R6/include \
- /usr/local/X11R5/include \
- /usr/local/X11R4/include \
- \
- /usr/local/include/X11 \
- /usr/local/include/X11R6 \
- /usr/local/include/X11R5 \
- /usr/local/include/X11R4 \
- \
- /usr/X386/include \
- /usr/x386/include \
- /usr/XFree86/include/X11 \
- \
- /usr/include \
- /usr/local/include \
- /usr/unsupported/include \
- /usr/athena/include \
- /usr/local/x11r5/include \
- /usr/lpp/Xamples/include \
- \
- /usr/openwin/include \
- /usr/openwin/share/include \
- ; \
- do
- if test -r "$ac_dir/$x_direct_test_include"; then
- ac_x_includes=$ac_dir
- break
- fi
- done
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ for ac_dir in $ac_x_header_dirs; do
+ if test -r "$ac_dir/X11/Xlib.h"; then
+ ac_x_includes=$ac_dir
+ break
+ fi
+done
fi
-rm -f conftest*
-fi # $ac_x_includes = NO
-if test "$ac_x_libraries" = NO; then
+rm -f conftest.err conftest.$ac_ext
+fi # $ac_x_includes = no
+
+if test "$ac_x_libraries" = no; then
# Check for the libraries.
-
- test -z "$x_direct_test_library" && x_direct_test_library=Xt
- test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc
-
# See if we find them without any special options.
# Don't add to $LIBS permanently.
- ac_save_LIBS="$LIBS"
- LIBS="-l$x_direct_test_library $LIBS"
-cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- LIBS="$ac_save_LIBS"
+ ac_save_LIBS=$LIBS
+ LIBS="-lX11 $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include
+int
+main ()
+{
+XrmInitialize ()
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ LIBS=$ac_save_LIBS
# We can link X programs with no special library path.
ac_x_libraries=
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- LIBS="$ac_save_LIBS"
-# First see if replacing the include by lib works.
-# Check X11 before X11Rn because it is often a symlink to the current release.
-for ac_dir in `echo "$ac_x_includes" | sed s/include/lib/` \
- /usr/X11/lib \
- /usr/X11R6/lib \
- /usr/X11R5/lib \
- /usr/X11R4/lib \
- \
- /usr/lib/X11 \
- /usr/lib/X11R6 \
- /usr/lib/X11R5 \
- /usr/lib/X11R4 \
- \
- /usr/local/X11/lib \
- /usr/local/X11R6/lib \
- /usr/local/X11R5/lib \
- /usr/local/X11R4/lib \
- \
- /usr/local/lib/X11 \
- /usr/local/lib/X11R6 \
- /usr/local/lib/X11R5 \
- /usr/local/lib/X11R4 \
- \
- /usr/X386/lib \
- /usr/x386/lib \
- /usr/XFree86/lib/X11 \
- \
- /usr/lib \
- /usr/local/lib \
- /usr/unsupported/lib \
- /usr/athena/lib \
- /usr/local/x11r5/lib \
- /usr/lpp/Xamples/lib \
- /lib/usr/lib/X11 \
- \
- /usr/openwin/lib \
- /usr/openwin/share/lib \
- ; \
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ LIBS=$ac_save_LIBS
+for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`
do
+ # Don't even attempt the hair of trying to link an X program!
for ac_extension in a so sl; do
- if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then
+ if test -r "$ac_dir/libX11.$ac_extension"; then
ac_x_libraries=$ac_dir
break 2
fi
done
done
fi
-rm -f conftest*
-fi # $ac_x_libraries = NO
-if test "$ac_x_includes" = NO || test "$ac_x_libraries" = NO; then
- # Didn't find X anywhere. Cache the known absence of X.
- ac_cv_have_x="have_x=no"
-else
- # Record where we found X for the cache.
- ac_cv_have_x="have_x=yes \
- ac_x_includes=$ac_x_includes ac_x_libraries=$ac_x_libraries"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi # $ac_x_libraries = no
+
+case $ac_x_includes,$ac_x_libraries in #(
+ no,* | *,no | *\'*)
+ # Didn't find X, or a directory has "'" in its name.
+ ac_cv_have_x="have_x=no";; #(
+ *)
+ # Record where we found X for the cache.
+ ac_cv_have_x="have_x=yes\
+ ac_x_includes='$ac_x_includes'\
+ ac_x_libraries='$ac_x_libraries'"
+esac
fi
-fi
- fi
+;; #(
+ *) have_x=yes;;
+ esac
eval "$ac_cv_have_x"
fi # $with_x != no
if test "$have_x" != yes; then
- echo "$ac_t""$have_x" 1>&6
+ { echo "$as_me:$LINENO: result: $have_x" >&5
+echo "${ECHO_T}$have_x" >&6; }
no_x=yes
else
# If each of the values was on the command line, it overrides each guess.
test "x$x_includes" = xNONE && x_includes=$ac_x_includes
test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries
# Update the cache value to reflect the command line values.
- ac_cv_have_x="have_x=yes \
- ac_x_includes=$x_includes ac_x_libraries=$x_libraries"
- echo "$ac_t""libraries $x_libraries, headers $x_includes" 1>&6
+ ac_cv_have_x="have_x=yes\
+ ac_x_includes='$x_includes'\
+ ac_x_libraries='$x_libraries'"
+ { echo "$as_me:$LINENO: result: libraries $x_libraries, headers $x_includes" >&5
+echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6; }
fi
if test "$no_x" = yes; then
# Not all programs may use this symbol, but it does not hurt to define it.
- cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\_ACEOF
#define X_DISPLAY_MISSING 1
-EOF
+_ACEOF
X_CFLAGS= X_PRE_LIBS= X_LIBS= X_EXTRA_LIBS=
else
@@ -3399,61 +9003,104 @@
X_LIBS="$X_LIBS -L$x_libraries"
# For Solaris; some versions of Sun CC require a space after -R and
# others require no space. Words are not sufficient . . . .
- case "`(uname -sr) 2>/dev/null`" in
- "SunOS 5"*)
- echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
-echo "configure:3406: checking whether -R must be followed by a space" >&5
- ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
- cat > conftest.$ac_ext <&5
+echo $ECHO_N "checking whether -R must be followed by a space... $ECHO_C" >&6; }
+ ac_xsave_LIBS=$LIBS; LIBS="$LIBS -R$x_libraries"
+ ac_xsave_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
+int
+main ()
+{
-; return 0; }
-EOF
-if { (eval echo configure:3416: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_R_nospace=yes
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+ X_LIBS="$X_LIBS -R$x_libraries"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_R_nospace=no
-fi
-rm -f conftest*
- if test $ac_R_nospace = yes; then
- echo "$ac_t""no" 1>&6
- X_LIBS="$X_LIBS -R$x_libraries"
- else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
LIBS="$ac_xsave_LIBS -R $x_libraries"
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
+int
+main ()
+{
-; return 0; }
-EOF
-if { (eval echo configure:3439: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- ac_R_space=yes
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+ X_LIBS="$X_LIBS -R $x_libraries"
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- ac_R_space=no
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: result: neither works" >&5
+echo "${ECHO_T}neither works" >&6; }
fi
-rm -f conftest*
- if test $ac_R_space = yes; then
- echo "$ac_t""yes" 1>&6
- X_LIBS="$X_LIBS -R $x_libraries"
- else
- echo "$ac_t""neither works" 1>&6
- fi
- fi
- LIBS="$ac_xsave_LIBS"
- esac
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ ac_c_werror_flag=$ac_xsave_c_werror_flag
+ LIBS=$ac_xsave_LIBS
fi
# Check for system-dependent libraries X programs must link with.
@@ -3463,567 +9110,996 @@
if test "$ISC" = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl_s -linet"
else
- # Martyn.Johnson at cl.cam.ac.uk says this is needed for Ultrix, if the X
- # libraries were built with DECnet support. And karl at cs.umb.edu says
+ # Martyn Johnson says this is needed for Ultrix, if the X
+ # libraries were built with DECnet support. And Karl Berry says
# the Alpha needs dnet_stub (dnet does not exist).
- echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
-echo "configure:3471: checking for dnet_ntoa in -ldnet" >&5
-ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ ac_xsave_LIBS="$LIBS"; LIBS="$LIBS $X_LIBS -lX11"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char XOpenDisplay ();
+int
+main ()
+{
+return XOpenDisplay ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ :
else
- ac_save_LIBS="$LIBS"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ { echo "$as_me:$LINENO: checking for dnet_ntoa in -ldnet" >&5
+echo $ECHO_N "checking for dnet_ntoa in -ldnet... $ECHO_C" >&6; }
+if test "${ac_cv_lib_dnet_dnet_ntoa+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
LIBS="-ldnet $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-dnet_ntoa()
-; return 0; }
-EOF
-if { (eval echo configure:3490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dnet_ntoa ();
+int
+main ()
+{
+return dnet_ntoa ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_dnet_dnet_ntoa=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dnet_dnet_ntoa=no
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_dnet_dnet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_dnet_dnet_ntoa" >&6; }
+if test $ac_cv_lib_dnet_dnet_ntoa = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"
-else
- echo "$ac_t""no" 1>&6
fi
if test $ac_cv_lib_dnet_dnet_ntoa = no; then
- echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
-echo "configure:3512: checking for dnet_ntoa in -ldnet_stub" >&5
-ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ { echo "$as_me:$LINENO: checking for dnet_ntoa in -ldnet_stub" >&5
+echo $ECHO_N "checking for dnet_ntoa in -ldnet_stub... $ECHO_C" >&6; }
+if test "${ac_cv_lib_dnet_stub_dnet_ntoa+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_save_LIBS="$LIBS"
+ ac_check_lib_save_LIBS=$LIBS
LIBS="-ldnet_stub $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-dnet_ntoa()
-; return 0; }
-EOF
-if { (eval echo configure:3531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dnet_ntoa ();
+int
+main ()
+{
+return dnet_ntoa ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_dnet_stub_dnet_ntoa=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_dnet_stub_dnet_ntoa=no
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_dnet_stub_dnet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_dnet_stub_dnet_ntoa" >&6; }
+if test $ac_cv_lib_dnet_stub_dnet_ntoa = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"
-else
- echo "$ac_t""no" 1>&6
fi
fi
+fi
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS="$ac_xsave_LIBS"
+
# msh at cis.ufl.edu says -lnsl (and -lsocket) are needed for his 386/AT,
# to get the SysV transport functions.
- # chad at anasazi.com says the Pyramis MIS-ES running DC/OSx (SVR4)
+ # Chad R. Larson says the Pyramis MIS-ES running DC/OSx (SVR4)
# needs -lnsl.
# The nsl library prevents programs from opening the X display
- # on Irix 5.2, according to dickey at clark.net.
- echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
-echo "configure:3560: checking for gethostbyname" >&5
-if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ # on Irix 5.2, according to T.E. Dickey.
+ # The functions gethostbyname, getservbyname, and inet_addr are
+ # in -lbsd on LynxOS 3.0.1/i386, according to Lars Hecking.
+ { echo "$as_me:$LINENO: checking for gethostbyname" >&5
+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6; }
+if test "${ac_cv_func_gethostbyname+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define gethostbyname to an innocuous variant, in case declares gethostbyname.
+ For example, HP-UX 11i declares gettimeofday. */
+#define gethostbyname innocuous_gethostbyname
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char gethostbyname(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char gethostbyname();
+ which can conflict with char gethostbyname (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef gethostbyname
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gethostbyname ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_gethostbyname) || defined (__stub___gethostbyname)
+#if defined __stub_gethostbyname || defined __stub___gethostbyname
choke me
-#else
-gethostbyname();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:3588: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_gethostbyname=yes"
+int
+main ()
+{
+return gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_func_gethostbyname=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_gethostbyname=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_gethostbyname=no
fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_func_'gethostbyname`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- :
-else
- echo "$ac_t""no" 1>&6
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6; }
if test $ac_cv_func_gethostbyname = no; then
- echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:3609: checking for gethostbyname in -lnsl" >&5
-ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ { echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5
+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6; }
+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_save_LIBS="$LIBS"
+ ac_check_lib_save_LIBS=$LIBS
LIBS="-lnsl $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-gethostbyname()
-; return 0; }
-EOF
-if { (eval echo configure:3628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gethostbyname ();
+int
+main ()
+{
+return gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_nsl_gethostbyname=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_nsl_gethostbyname=no
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6; }
+if test $ac_cv_lib_nsl_gethostbyname = yes; then
X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl"
+fi
+
+ if test $ac_cv_lib_nsl_gethostbyname = no; then
+ { echo "$as_me:$LINENO: checking for gethostbyname in -lbsd" >&5
+echo $ECHO_N "checking for gethostbyname in -lbsd... $ECHO_C" >&6; }
+if test "${ac_cv_lib_bsd_gethostbyname+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- echo "$ac_t""no" 1>&6
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lbsd $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char gethostbyname ();
+int
+main ()
+{
+return gethostbyname ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_bsd_gethostbyname=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_bsd_gethostbyname=no
fi
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_bsd_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_bsd_gethostbyname" >&6; }
+if test $ac_cv_lib_bsd_gethostbyname = yes; then
+ X_EXTRA_LIBS="$X_EXTRA_LIBS -lbsd"
+fi
+
+ fi
fi
# lieder at skyler.mavd.honeywell.com says without -lsocket,
# socket/setsockopt and other routines are undefined under SCO ODT
# 2.0. But -lsocket is broken on IRIX 5.2 (and is not necessary
- # on later versions), says simon at lia.di.epfl.ch: it contains
- # gethostby* variants that don't use the nameserver (or something).
- # -lsocket must be given before -lnsl if both are needed.
- # We assume that if connect needs -lnsl, so does gethostbyname.
- echo $ac_n "checking for connect""... $ac_c" 1>&6
-echo "configure:3658: checking for connect" >&5
-if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ # on later versions), says Simon Leinen: it contains gethostby*
+ # variants that don't use the name server (or something). -lsocket
+ # must be given before -lnsl if both are needed. We assume that
+ # if connect needs -lnsl, so does gethostbyname.
+ { echo "$as_me:$LINENO: checking for connect" >&5
+echo $ECHO_N "checking for connect... $ECHO_C" >&6; }
+if test "${ac_cv_func_connect+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define connect to an innocuous variant, in case declares connect.
+ For example, HP-UX 11i declares gettimeofday. */
+#define connect innocuous_connect
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char connect(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char connect();
+ which can conflict with char connect (); below.
+ Prefer to if __STDC__ is defined, since
+ exists even on freestanding compilers. */
-int main() {
+#ifdef __STDC__
+# include
+#else
+# include
+#endif
+#undef connect
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char connect ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
-#if defined (__stub_connect) || defined (__stub___connect)
+#if defined __stub_connect || defined __stub___connect
choke me
-#else
-connect();
#endif
-; return 0; }
-EOF
-if { (eval echo configure:3686: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_func_connect=yes"
+int
+main ()
+{
+return connect ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_func_connect=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_func_connect=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_func_connect=no
fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_func_'connect`\" = yes"; then
- echo "$ac_t""yes" 1>&6
- :
-else
- echo "$ac_t""no" 1>&6
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
fi
+{ echo "$as_me:$LINENO: result: $ac_cv_func_connect" >&5
+echo "${ECHO_T}$ac_cv_func_connect" >&6; }
if test $ac_cv_func_connect = no; then
- echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
-echo "configure:3707: checking for connect in -lsocket" >&5
-ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ { echo "$as_me:$LINENO: checking for connect in -lsocket" >&5
+echo $ECHO_N "checking for connect in -lsocket... $ECHO_C" >&6; }
+if test "${ac_cv_lib_socket_connect+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- ac_save_LIBS="$LIBS"
+ ac_check_lib_save_LIBS=$LIBS
LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
-cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
-int main() {
-connect()
-; return 0; }
-EOF
-if { (eval echo configure:3726: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=yes"
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char connect ();
+int
+main ()
+{
+return connect ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_socket_connect=yes
else
- echo "configure: failed program was:" >&5
- cat conftest.$ac_ext >&5
- rm -rf conftest*
- eval "ac_cv_lib_$ac_lib_var=no"
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_socket_connect=no
fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
- echo "$ac_t""yes" 1>&6
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_socket_connect" >&5
+echo "${ECHO_T}$ac_cv_lib_socket_connect" >&6; }
+if test $ac_cv_lib_socket_connect = yes; then
X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS"
-else
- echo "$ac_t""no" 1>&6
fi
fi
- # gomez at mi.uni-erlangen.de says -lposix is necessary on A/UX.
- echo $ac_n "checking for remove""... $ac_c" 1>&6
-echo "configure:3750: checking for remove" >&5
-if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
- echo $ac_n "(cached) $ac_c" 1>&6
+ # Guillermo Gomez says -lposix is necessary on A/UX.
+ { echo "$as_me:$LINENO: checking for remove" >&5
+echo $ECHO_N "checking for remove... $ECHO_C" >&6; }
+if test "${ac_cv_func_remove+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
else
- cat > conftest.$ac_ext <conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define remove to an innocuous variant, in case declares remove.
+ For example, HP-UX 11i declares gettimeofday. */
+#define remove innocuous_remove
+
/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char remove(); below. */
-#include
-/* Override any gcc2 internal prototype to avoid an error. */
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char remove();
+ which can conflict with char remove (); below.
+ Prefer to