
mikhail at nessus
Sep 12, 2006, 2:49 AM
Post #1 of 1
(700 views)
Permalink
|
|
nessus-core CHANGES, 1.313, 1.314 Makefile, 1.57, 1.58 aclocal.m4, 1.3, 1.4 configure, 1.137, 1.138 configure.in, 1.130, 1.131 nessus-mkcert-client.in, 1.15, 1.16 nessus-mkcert.in, 1.28, 1.29 nessus-rmuser.in, 1.10, 1.11 nessus-services, 1.10, 1.11 nessus
|
|
Update of /usr/local/cvs/nessus-core In directory raccoon.nessus.org:/tmp/cvs-serv4246/nessus-core Modified Files: CHANGES Makefile aclocal.m4 configure configure.in nessus-mkcert-client.in nessus-mkcert.in nessus-rmuser.in nessus-services nessus.tmpl.in Log Message: Synchronize back DEVEL with 2.2 Index: CHANGES =================================================================== RCS file: /usr/local/cvs/nessus-core/CHANGES,v retrieving revision 1.313 retrieving revision 1.314 diff -u -d -r1.313 -r1.314 --- CHANGES 28 Oct 2004 01:51:23 -0000 1.313 +++ CHANGES 12 Sep 2006 09:49:03 -0000 1.314 @@ -4,6 +4,204 @@ $Id$ +2.2.8 : + +- nessusd : + + - Make sure that plugins of type ACT_INIT and ACT_SETTINGS are + always enabled during a scan + + - Display more error verbose error messages when it's impossible to + load a .nes plugin + + - Fixed a harmless memory reallocation problem which would truncate + a very long preference name + +- nessus-libraries + + - Fixed a possible memory corruption when forwarding data from a process + to another + +- libnasl : + + - 'a = b + c ++' would not work as expected + - fixed a memory allocation problem when split() is passed an argument of + the wrong type + + +2.2.7 : + +. changes by Tenable Network Security : + +- nessus-libraries : + + - Fixed a NULL pointer dereferencement in the BPF server + - The 'service' functions now only deal with the services file provided + with Nessus (instead of using a mix of /etc/services and others) + +- libnasl : + + - Fixed off-by-one bugs in insstr() and str_replace() which would sometimes + prevent these two functions from properly dealing with the last character of a + string + - Fixed tcp_ping() which was too aggressive and may therefore sometimes miss + a live host + - Fixed a bug in send() which would not properly validate the value of the + 'length' variable + - Now handle arrays of arrays + - Fixed open_priv_sock_tcp() which would report a successful connection when + timing out + +- nessusd : + + - Properly install the file 'nessus-services' in $prefix/var/nessus/ + - Bigger buffer when receiving preferences from the client (to avoid a possible + truncation of the plugin list in the future) + - Fixed a bug in the preferences parser which would cause nessusd to die on startup when + processing a malformed preference file + +- nessus : + + - Fixed an unlikely but potential segmentation fault when viewing the report in the GUI + - Erase the credentials from memory after having used them (thanks to Sumiut Siddhart + for noticing this) + +- plugins : + + - nmap.nasl has been removed from the main distribution (to use nmap from Nessus, + read <http://www.nessus.org/u?e56c945b>) + + - Performance improvements to nessus_tcp_scanner + + - Improved the file nessus-services + + +2.2.6 : + +. changes by Tenable Network Security : + +- Engine : + + - New NASL function socket_get_error() which returns the last error which + occured on a socket (timeout, connection reset, etc...) + - Removed the C function http_recv_headers() in favor of 'http_recv_headers2()' + written in NASL + - If the computer clock is not set properly, load the plugins anyways + - Under certain circumstances, the plugins preferences may appear twice in the + Nessus GUI + - nessus-fetch is more reliable when used in a very low bandwidth environment + - nessusd has higher memory limits when running on a 64 bits CPU + - Use nasl_memmem() instead of memmem() to solve a possible segfault on + 64 bits architectures (bug#1293) + +Plugins : + + - The Windows Bulletin checks now check the version of the files on the remote + host (when possible) instead of looking at the registry + - It is now possible to disable CGI scanning entirely in Prefs->Global Settings + - Rewritten several key plugins (dcetest.nasl, netbios_name_get.nasl) to better + support the underlying protocol + +. changes by Michel Arboi : + +- nessus_tcp_scanner now performs multiple passes, for improved reliability. + It also is much quicker against BSD machines (which have a rate limitation + for the RST they send) + + + +2.2.5 : + +. changes by Renaud Deraison : + +- Faster scan startup speed (at the expense of a slightly bigger memory usage) +- nessus-fetch now calls nessus-update-plugins upon registration +- Fixed the use of an uninitialized buffer in the shared socket code +- Fixed some uninitialized variables in nessus_tcp_scanner +- Fixed several null pointer dereferencement in libnasl +- New NASL function 'send_capture()' +- Rotate nessusd.messages on startup if the file is too big + +. changes by Michel Arboi : + +- nessus_tcp_scanner now tracks down more statistics about the remote ports + (filtered vs. closed) + +. changes by Beirne Kornarksi : + +- Fixed bug#1224 + +2.2.4 : + +. changes by Renaud Deraison : + +- Fixed a bug in nessusd when killing slow plugins, which may result + in a hang of the scan +- Fixed a bug in find_services.nes which would prevent it from exiting + properly when receiving a SIGTERM message +- Fixed a bug in libnessus/network.c which may result in incompletes + SSL reads +- Fixed proxy support in nessus-fetch +- Reduced CPU usage +- Brand new SMB API +- The nessus-fetch man page is now installed +- Updated os_fingerprint.nasl with all the newest signatures + +. changes by Michel Arboi : + +- More gentle nessus_tcp_scanner + +2.2.3 : + +. changes by Renaud Deraison : + +- Added the 'silent dependencies' option (suggested by Nicolas Pouvesle) +- Added a new 'Credentials' Tab to put SSH and SMB credentials +- Removed some un-recommended options from the GUI (detached scan) +- Fixed a NULL-ptr dereferencement in libnasl + +. changes by Michel Arboi : + +- Call setrlimit() without any limits when calling popen() + +. changes by Nicolas Pouvesle : + +- Replaced the functions in libnasl/nasl/smb_crypt.* by crypt_func.nasl + +2.2.2 : + +. changes by Renaud Deraison : + +- Fixed HTTPS-over-proxy in nessus-fetch +- Fixed a build issue on Solaris in nessus-fetch +- Fixed the detached scans + +2.2.1 : + +. changes by Renaud Deraison : + +- Turn on buffering for every TCP sockets to reduce the number of system calls +(only HTTP-related sockets would have a buffered input) + +- Fixed bug#1065 which would make nessusd do an endless stream of calls +to gethostbyname() when testing a non-existant host name + +- Fixed a bug in the TCP socket buffering which would cause +read_stream_connection() to perform a short read under some circumstances + +- Added nessus-fetch(1), a utility which retrieves plugins from +www.nessus.org. + +- Rewrote nessus-update-plugins to use nessus-fetch instead +of wget/lynx/fetch/curl + +- Fixed bug#1076 (support for bash 3.0) + +. changes by Michel Arboi : + +- New TCP port scanner (nessus_tcp_portscan.nes) +- Better Hydra integration through multiple nasl scripts + 2.2.0 : - Fixed a couple of memory leaks (thanks to Lance Uyehara) Index: Makefile =================================================================== RCS file: /usr/local/cvs/nessus-core/Makefile,v retrieving revision 1.57 retrieving revision 1.58 diff -u -d -r1.57 -r1.58 --- Makefile 14 Mar 2005 22:34:04 -0000 1.57 +++ Makefile 12 Sep 2006 09:49:03 -0000 1.58 @@ -38,6 +38,7 @@ test -d $(DESTDIR)${NESSUSD_STATEDIR}/tmp || $(INSTALL_DIR) -m 755 $(DESTDIR)${NESSUSD_STATEDIR}/tmp test -d $(DESTDIR)${NESSUSD_STATEDIR}/jobs || $(INSTALL_DIR) -m 755 $(DESTDIR)${NESSUSD_STATEDIR}/jobs test -d $(DESTDIR)${NESSUSD_LOGDIR} || $(INSTALL_DIR) -m 755 $(DESTDIR)${NESSUSD_LOGDIR} + $(INSTALL) -c -m 0444 nessus-services $(DESTDIR)${NESSUSD_STATEDIR}/ $(INSTALL) -c -m 0444 include/config.h $(DESTDIR)${includedir}/nessus $(INSTALL) -c -m 0444 include/ntcompat.h $(DESTDIR)${includedir}/nessus $(INSTALL) -c -m 0444 include/includes.h $(DESTDIR)${includedir}/nessus @@ -109,6 +110,7 @@ clean: cd nessus && $(MAKE) clean + cd nessus-fetch && $(MAKE) clean cd nessusd && $(MAKE) clean cd ssl && $(MAKE) clean Index: aclocal.m4 =================================================================== RCS file: /usr/local/cvs/nessus-core/aclocal.m4,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- aclocal.m4 3 Nov 2004 13:07:46 -0000 1.3 +++ aclocal.m4 12 Sep 2006 09:49:03 -0000 1.4 @@ -1,71 +1,511 @@ -# aclocal.m4 generated automatically by aclocal 1.6.3 -*- Autoconf -*- +dnl aclocal.m4 generated automatically by aclocal 1.2f -# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +# Do all the work for Automake. This macro actually does too much -- +# some checks are only needed if your package does certain things. +# But this isn't really a big deal. -dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) -dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page -dnl also defines GSTUFF_PKG_ERRORS on error -AC_DEFUN(PKG_CHECK_MODULES, [. - succeeded=no +# serial 1 - if test -z "$PKG_CONFIG"; then - AC_PATH_PROG(PKG_CONFIG, pkg-config, no) +# +# Check to make sure that the build environment is sane. +# + +AC_DEFUN(AM_SANITY_CHECK, +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "[$]*" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + if test "[$]*" != "X $srcdir/configure conftestfile" \ + && test "[$]*" != "X conftestfile $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + AC_MSG_ERROR([.ls -t appears to fail. Make sure there is not a broken +alias in your environment]) + fi + + test "[$]2" = conftestfile + ) +then + # Ok. + : +else + AC_MSG_ERROR([.newly created file is older than distributed files! +Check your system clock]) +fi +rm -f conftest* +AC_MSG_RESULT(yes)]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[.AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + +# Like AC_CONFIG_HEADER, but automatically create stamp file. + +AC_DEFUN(AM_CONFIG_HEADER, +[AC_PREREQ([2.12]) +AC_CONFIG_HEADER([$1]) +dnl When config.status generates a header, we must update the stamp-h file. +dnl This file resides in the same directory as the config header +dnl that is generated. We must strip everything past the first ":", +dnl and everything past the last "/". +AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl +ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, +<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, +<<am_indx=1 +for am_file in <<$1>>; do + case " <<$>>CONFIG_HEADERS " in + *" <<$>>am_file "*<<)>> + echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx + ;; + esac + am_indx=`expr "<<$>>am_indx" + 1` +done<<>>dnl>>) +changequote([,]))]) + + +# serial 24 AM_PROG_LIBTOOL +AC_DEFUN(AM_PROG_LIBTOOL, +[AC_REQUIRE([AM_ENABLE_SHARED])dnl +AC_REQUIRE([AM_ENABLE_STATIC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_PROG_RANLIB])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AM_PROG_LD])dnl +AC_REQUIRE([AM_PROG_NM])dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +dnl +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +# Check for any special flags to pass to ltconfig. +libtool_flags= +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" +test "$silent" = yes && libtool_flags="$libtool_flags --silent" +test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" +test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case "$host" in +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case "`/usr/bin/file conftest.o`" in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac fi + rm -rf conftest* + ;; - if test "$PKG_CONFIG" = "no" ; then - echo "*** The pkg-config script could not be found. Make sure it is" - echo "*** in your path, or set the PKG_CONFIG environment variable" - echo "*** to the full path to pkg-config." - echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." - else - PKG_CONFIG_MIN_VERSION=0.9.0 - if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then - AC_MSG_CHECKING(for $2) +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + CFLAGS="$CFLAGS -belf" + ;; +esac - if $PKG_CONFIG --exists "$2" ; then - AC_MSG_RESULT(yes) - succeeded=yes +# Actually configure libtool. ac_aux_dir is where install-sh is found. +CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ +LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \ +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \ +$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \ +|| AC_MSG_ERROR([libtool configure failed]) +]) - AC_MSG_CHECKING($1_CFLAGS) - $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` - AC_MSG_RESULT($$1_CFLAGS) +# AM_ENABLE_SHARED - implement the --enable-shared flag +# Usage: AM_ENABLE_SHARED[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN(AM_ENABLE_SHARED, +[define([AM_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(shared, +changequote(<<, >>)dnl +<< --enable-shared build shared libraries [default=>>AM_ENABLE_SHARED_DEFAULT] +changequote([, ])dnl +[. --enable-shared=PKGS only build shared libraries if the current package + appears as an element in the PKGS list], +[.p=${PACKAGE-default} +case "$enableval" in +yes) enable_shared=yes ;; +no) enable_shared=no ;; +*) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_shared=AM_ENABLE_SHARED_DEFAULT)dnl +]) - AC_MSG_CHECKING($1_LIBS) - $1_LIBS=`$PKG_CONFIG --libs "$2"` - AC_MSG_RESULT($$1_LIBS) - else - $1_CFLAGS="" - $1_LIBS="" - ## If we have a custom action on failure, don't print errors, but - ## do set a variable so people can do so. - $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` - ifelse([$4], ,echo $$1_PKG_ERRORS,) - fi +# AM_DISABLE_SHARED - set the default shared flag to --disable-shared +AC_DEFUN(AM_DISABLE_SHARED, +[AM_ENABLE_SHARED(no)]) - AC_SUBST($1_CFLAGS) - AC_SUBST($1_LIBS) - 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" - fi +# AM_DISABLE_STATIC - set the default static flag to --disable-static +AC_DEFUN(AM_DISABLE_STATIC, +[AM_ENABLE_STATIC(no)]) + +# AM_ENABLE_STATIC - implement the --enable-static flag +# Usage: AM_ENABLE_STATIC[(DEFAULT)] +# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to +# `yes'. +AC_DEFUN(AM_ENABLE_STATIC, +[define([AM_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE(static, +changequote(<<, >>)dnl +<< --enable-static build static libraries [default=>>AM_ENABLE_STATIC_DEFAULT] +changequote([, ])dnl +[. --enable-static=PKGS only build shared libraries if the current package + appears as an element in the PKGS list], +[.p=${PACKAGE-default} +case "$enableval" in +yes) enable_static=yes ;; +no) enable_static=no ;; +*) + enable_static=no + # Look at the argument we got. We use all the common list separators. + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$ac_save_ifs" + ;; +esac], +enable_static=AM_ENABLE_STATIC_DEFAULT)dnl +]) + + +# AM_PROG_LD - find the path to the GNU or non-GNU linker +AC_DEFUN(AM_PROG_LD, +[.AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC]) +ac_prog=ld +if test "$ac_cv_prog_gcc" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + ac_prog=`($CC -print-prog-name=ld) 2>&5` + case "$ac_prog" in + # Accept absolute paths. + /* | [A-Za-z]:\\*) + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(ac_cv_path_LD, +[.if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog"; then + ac_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + ac_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$ac_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_SUBST(LD) +AM_PROG_LD_GNU +]) + +AC_DEFUN(AM_PROG_LD_GNU, +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, +[.# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then + ac_cv_prog_gnu_ld=yes +else + ac_cv_prog_gnu_ld=no +fi]) +]) + +# AM_PROG_NM - find the path to a BSD-compatible name lister +AC_DEFUN(AM_PROG_NM, +[AC_MSG_CHECKING([for BSD-compatible nm]) +AC_CACHE_VAL(ac_cv_path_NM, +[case "$NM" in +/* | [A-Za-z]:\\*) + ac_cv_path_NM="$NM" # Let the user override the test with a path. + ;; +*) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/nm; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + ac_cv_path_NM="$ac_dir/nm -B" + elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then + ac_cv_path_NM="$ac_dir/nm -p" + else + ac_cv_path_NM="$ac_dir/nm" + fi + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm + ;; +esac]) +NM="$ac_cv_path_NM" +AC_MSG_RESULT([$NM]) +AC_SUBST(NM) +]) + +# Add --enable-maintainer-mode option to configure. +# From Jim Meyering + +# serial 1 + +AC_DEFUN(AM_MAINTAINER_MODE, +[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) + dnl maintainer-mode is disabled by default + AC_ARG_ENABLE(maintainer-mode, +[. --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer], + USE_MAINTAINER_MODE=$enableval, + USE_MAINTAINER_MODE=no) + AC_MSG_RESULT($USE_MAINTAINER_MODE) + if test $USE_MAINTAINER_MODE = yes; then + MAINT= + else + MAINT='#M#' fi + AC_SUBST(MAINT)dnl +] +) - if test $succeeded = yes; then - ifelse([$3], , :, [$3]) +# Configure paths for GTK+ +# Owen Taylor 97-11-3 + +dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS +dnl +AC_DEFUN(AM_PATH_GTK, +[.dnl +dnl Get the cflags and libraries from the gtk-config script +dnl + AC_PATH_PROG(GTK_CONFIG, gtk-config, no) + min_gtk_version=ifelse([$1], ,0.99.7,$1) + AC_MSG_CHECKING(for GTK - version >= $min_gtk_version) + no_gtk="" + if test "$GTK_CONFIG" != "no" ; then + GTK_CFLAGS=`$GTK_CONFIG --cflags` + GTK_LIBS=`$GTK_CONFIG --libs` + ac_save_CFLAGS="$CFLAGS" + ac_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $GTK_CFLAGS" + LIBS="$LIBS $GTK_LIBS" +dnl +dnl Now check if the installed GTK is sufficiently new. (Also sanity +dnl checks the results of gtk-config to some extent +dnl + AC_TRY_RUN([. +#include <gtk/gtk.h> +#include <stdio.h> + +int +main () +{ + int major, minor, micro; + + if (sscanf("$min_gtk_version", "%d.%d.%d", &major, &minor, µ) != 3) { + printf("%s, bad version string\n", "$min_gtk_version"); + exit(1); + } + + return !((gtk_major_version > major) || + ((gtk_major_version == major) && (gtk_minor_version > minor)) || + ((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro))); +} +],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" else - ifelse([$4], , AC_MSG_ERROR([.Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) + no_gtk=yes fi + if test "x$no_gtk" = x ; then + AC_MSG_RESULT(yes) + ifelse([$2], , :, [$2]) + else + AC_MSG_RESULT(no) + GTK_CFLAGS="" + GTK_LIBS="" + ifelse([$3], , :, [$3]) + fi + AC_SUBST(GTK_CFLAGS) + AC_SUBST(GTK_LIBS) ]) +# serial 1 + +# @defmac AC_PROG_CC_STDC +# @maindex PROG_CC_STDC +# @ovindex CC +# If the C compiler in not in ANSI C mode by default, try to add an option +# to output variable @code{CC} to make it so. This macro tries various +# options that select ANSI C on some system or another. It considers the +# compiler to be in ANSI C mode if it handles function prototypes correctly. +# +# If you use this macro, you should check after calling it whether the C +# compiler has been set to accept ANSI C; if not, the shell variable +# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source +# code in ANSI C, you can make an un-ANSIfied copy of it by using the +# program @code{ansi2knr}, which comes with Ghostscript. +# @end defmac + +AC_DEFUN(AM_PROG_CC_STDC, +[AC_REQUIRE([AC_PROG_CC]) +AC_BEFORE([$0], [AC_C_INLINE]) +AC_BEFORE([$0], [AC_C_CONST]) +dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require +dnl a magic option to avoid problems with ANSI preprocessor commands +dnl like #elif. +dnl FIXME: can't do this because then AC_AIX won't work due to a +dnl circular dependency. +dnl AC_BEFORE([$0], [AC_PROG_CPP]) +AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C) +AC_CACHE_VAL(am_cv_prog_cc_stdc, +[.am_cv_prog_cc_stdc=no +ac_save_CC="$CC" +# Don't try gcc -ansi; that turns off useful extensions and +# breaks some systems' header files. +# AIX -qlanglvl=ansi +# Ultrix and OSF/1 -std1 +# HP-UX -Aa -D_HPUX_SOURCE +# SVR4 -Xc -D__EXTENSIONS__ +for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + AC_TRY_COMPILE( +[.#include <stdarg.h> +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +], [ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; +], +[am_cv_prog_cc_stdc="$ac_arg"; break]) +done +CC="$ac_save_CC" +]) +if test -z "$am_cv_prog_cc_stdc"; then + AC_MSG_RESULT([none needed]) +else + AC_MSG_RESULT($am_cv_prog_cc_stdc) +fi +case "x$am_cv_prog_cc_stdc" in + x|xno) ;; + *) CC="$CC $am_cv_prog_cc_stdc" ;; +esac +]) Index: configure =================================================================== RCS file: /usr/local/cvs/nessus-core/configure,v retrieving revision 1.137 retrieving revision 1.138 diff -u -d -r1.137 -r1.138 --- configure 8 Feb 2005 01:41:02 -0000 1.137 +++ configure 12 Sep 2006 09:49:03 -0000 1.138 @@ -17,8 +17,6 @@ ac_help="$ac_help --enable-debug set the compiler flags to -g" ac_help="$ac_help - --enable-client build the nessus client" -ac_help="$ac_help --enable-install=user for debugging, install as non-root user" ac_help="$ac_help --enable-syslog log messages via syslog()" @@ -540,7 +538,7 @@ fi [...2821 lines suppressed...] -s%@gettext_flags@%$gettext_flags%g CEOF EOF @@ -6111,5 +6224,15 @@ chmod +x nessus-adduser nessus-mkcert nessus-mkcert-client + + +test "x$enable_gtk" = "xno" || +{ +test -z "$GTKCONFIG" -a -z "$PKGCONFIG" && { +echo "configure: warning: gtk-config could not be found : the client will not be built. \ +If you want to build a command-line only client then type ./configure --disable-gtk" 1>&2 +} + +} exit 0 Index: configure.in =================================================================== RCS file: /usr/local/cvs/nessus-core/configure.in,v retrieving revision 1.130 retrieving revision 1.131 diff -u -d -r1.130 -r1.131 --- configure.in 8 Feb 2005 01:41:01 -0000 1.130 +++ configure.in 12 Sep 2006 09:49:04 -0000 1.131 @@ -9,7 +9,6 @@ dnl --enable-debug dnl --enable-pthreads (experimental dont use dont use dont use!) dnl --enable-syslog -dnl --enable-client dnl --enable-gtk dnl --enable-unix-socket @@ -60,7 +59,6 @@ test "x$enable_syslog" = "x" && enable_syslog="yes"; test "x$enable_syslog" = "xno" && unset enable_syslog test "x$enable_gtk" = "x" && enable_gtk="yes" -test "x$enable_client" = "x" && enable_client="yes" nessus_lib=-lnessus @@ -76,9 +74,7 @@ AC_ARG_ENABLE(debug,[ --enable-debug set the compiler flags to -g],[ CFLAGS="-g"; debug_flags="-DDEBUG"]) - -AC_ARG_ENABLE(client,[ --enable-client build the nessus client]) - + AC_ARG_ENABLE(install,[ --enable-install=user for debugging, install as non-root user], installuser=$enable_install) : ${installuser:=root} @@ -155,7 +151,6 @@ AC_CHECK_HEADERS(poll.h sys/poll.h netinet/ip_tcp.h fcntl.h signal.h limits.h) AC_CHECK_HEADERS(sys/stat.h stat.h net/if.h sys/mman.h sys/resource.h dl.h) AC_CHECK_HEADERS(pty.h termio.h termios.h sgtty.h libutil.h setjmp.h values.h) -AC_CHECK_HEADERS(locale.h) dnl ./configure fails to determine the existence of some dnl headers under IRIX @@ -380,20 +375,6 @@ [AC_MSG_RESULT(yes); AC_DEFINE(HAVE_TCPHDR_TH_X2_OFF)], [AC_MSG_RESULT(no)]) -dnl I18N Test (GNU gettext) -AC_MSG_CHECKING([GNU gettext available]) -AC_TRY_COMPILE([#include <libintl.h>], -[.extern int _nl_msg_cat_cntr; -extern int *_nl_domain_bindings; -int -main () -{ - bindtextdomain ("", ""); - return (int) gettext ("") + (int) ngettext ("", "", 0) + _nl_msg_cat_cntr + *_nl_domain_bindings; -}], -[AC_MSG_RESULT(yes); AC_DEFINE(HAVE_GNU_GETTEXT) gettext_flags="-DHAVE_GNU_GETTEXT"], -[AC_MSG_RESULT(no)]) - dnl Define several paths @@ -531,7 +512,7 @@ case "$host" in - *-freebsd*|*-bsdi*|*-netbsd*) + *-freebsd*|*-bsdi*|*-netbsd*|*-darwin*) AC_DEFINE(BSD_BYTE_ORDERING) esac @@ -625,24 +606,96 @@ -if test "x$enable_client" = "xyes"; then +if test "x$enable_gtk" = "xno"; then client=client client_install=client-install else unset client unset client_install - enable_gtk=no fi +AC_PATH_PROG(GTKCONFIG, gtk-config,,$XPATH) +test "x$GTKCONFIG" = x && { + AC_PATH_PROG(GTKCONFIG, gtk12-config,,$XPATH) + test "x$GTKCONFIG" = x && AC_PATH_PROG(GTKCONFIG, gtk10-config,,$XPATH) + } + + +AC_PATH_PROG(PKGCONFIG, pkg-config,,$XPATH) + + + +test -n "$GTKCONFIG" -o "$PKGCONFIG" && +{ + client=client + client_install=client-install + AC_MSG_CHECKING([GTK version]) + test -n "$PKGCONFIG" && { + GTKVERSION=`$PKGCONFIG --modversion gtk+-2.0 2>/dev/null` + test -z "$GTKVERSION" && PKGCONFIG="" + } + test -z "$PKGCONFIG" -o -z "$GTKVERSION" && GTKVERSION=`$GTKCONFIG --version` + AC_MSG_RESULT($GTKVERSION) + GTK_VERSION=`echo $GTKVERSION | sed 's/\./ /g' | awk {'print $1$2'}` + test -n "$GTK_VERSION" && AC_DEFINE_UNQUOTED(GTK_VERSION,$GTK_VERSION) +} + +test -n "$GTKCONFIG" && +{ +AC_PATH_PROG(GLIBCONFIG, glib-config,,$XPATH) +test "x$GLIBCONFIG" = x && { + AC_PATH_PROG(GLIBCONFIG, glib12-config,,$XPATH) + } +} + + +test -z "$GTKCONFIG" && AC_WARN(**** gtk not found) + + + +lang=$enable_language + + + + +dnl the -R option that comes with X_LIBS usually overwrites the +dnl LD_RUN_PATH value (eg. on Solaris) + + test "x$enable_gtk" = "xno" || { -pkg_modules="gtk+-2.0 >= 2.0.0" -PKG_CHECK_MODULES(GTKCONFIG, [$pkg_modules]) -AC_SUBST(GTKCONFIG_CFLAGS) -AC_SUBST(GTKCONFIG_LIBS) + test -n "$GTKCONFIG" && + { + case `${GTKCONFIG} --libs` in + *-R\ *) RUN_LIBS='-R ${libdir}' ;; + *-R*) RUN_LIBS='-R${libdir}' ;; + esac + + GTKCONFIG_CFLAGS=`$GTKCONFIG --cflags` + GTKCONFIG_LIBS=`$GTKCONFIG --libs` + } + + test -n "$GLIBCONFIG" && { + GLIBCONFIG_CFLAGS=`$GLIBCONFIG --cflags` + GLIBCONFIG_LIBS=`$GLIBCONFIG --libs` + } + + test -n "$PKGCONFIG" && + { + GTKCONFIG_CFLAGS=`$PKGCONFIG --cflags gtk+-2.0` + GTKCONFIG_LIBS=`$PKGCONFIG --libs gtk+-2.0` + GLIBCONFIG_CFLAGS="" + GLIBCONFIG_LIBS="" + } + + + + + } + dnl only vanilla sed can handle long substitution lines CFLAGS="$saveCFLAGS" @@ -731,11 +784,12 @@ AC_SUBST(NASLCONFIG) AC_SUBST(GTKCONFIG_CFLAGS) AC_SUBST(GTKCONFIG_LIBS) +AC_SUBST(GLIBCONFIG_CFLAGS) +AC_SUBST(GLIBCONFIG_LIBS) AC_SUBST(ac_configure_args) AC_SUBST(egdpath) AC_SUBST(is_cygwin) AC_SUBST(installuser) -AC_SUBST(gettext_flags) dnl And we put everything in the appropriate files @@ -743,5 +797,15 @@ chmod +x nessus-adduser nessus-mkcert nessus-mkcert-client + + +test "x$enable_gtk" = "xno" || +{ +test -z "$GTKCONFIG" -a -z "$PKGCONFIG" && { +AC_WARN(gtk-config could not be found : the client will not be built. \ +If you want to build a command-line only client then type ./configure --disable-gtk) +} + +} exit 0 Index: nessus-mkcert-client.in =================================================================== RCS file: /usr/local/cvs/nessus-core/nessus-mkcert-client.in,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- nessus-mkcert-client.in 10 Dec 2004 19:41:46 -0000 1.15 +++ nessus-mkcert-client.in 12 Sep 2006 09:49:04 -0000 1.16 @@ -7,11 +7,38 @@ # This script is distributed under the Gnu General Public License (GPL) # + +case `id 2>/dev/null` in + uid=0*) + ;; + *) + echo "only root should use nessus-mkcert-client" + exit 1 +esac + + + case `echo -n` in \-n) Xn= ; Xc='\c' ;; *) Xn=-n ; Xc= esac + +echo_no_nl () +{ + echo $Xn "$*$Xc" +} + + +header() +{ +clear +echo "-------------------------------------------------------------------------------" +echo " Creation Nessus SSL client Certificate" +echo "-------------------------------------------------------------------------------" +echo +} +# umask 022 prefix=@prefix@ @@ -32,52 +59,6 @@ PATH=$PATH:$sbindir:$bindir:/usr/ssl/bin:/usr/local/ssl/bin:/opt/ssl/bin -# check if gettext is present - -if [ -f /usr/bin/gettext.sh ]; -then - - # initialize gettext - - . gettext.sh - export TEXTDOMAIN=nessus-scripts - export TEXTDOMAINDIR=@datadir@/locale - -else - - # define dummy functions - - gettext () { - echo $Xn "$1" $Xc - } - - eval_gettext () { - eval_gettext_var="echo $1" - echo $Xn `eval $eval_gettext_var` $Xc - } - -fi - -Bo='(' -Bc=')' -Hash='#' - -echo_no_nl () -{ - echo $Xn "$*$Xc" -} - - -header() -{ -clear -echo "-------------------------------------------------------------------------------" -gettext " Creation Nessus SSL Client Certificate"; echo -echo "-------------------------------------------------------------------------------" -echo -} -# - # # We need openssl # @@ -85,13 +66,14 @@ OpenSSL*) ;; *) - gettext "OpenSSL is not properly installed: The 'openssl' command line utility could not be found (is your \$PATH set properly?)"; echo + echo "OpenSSL is not properly installed (the 'openssl' command line utility could not" + echo "be found (is your \$PATH set properly ?)" exit 1 esac # Check environment if [ -z "$HOME" ]; then - gettext "\$HOME should be defined." 1>&2; echo; exit 1 + echo "HOME should be defined" 1>&2; exit 1 fi # @@ -103,10 +85,11 @@ if [. ! -r /dev/random -a ! -r /dev/urandom -a ! -r $HOME/.rnd ]; then header - gettext "You do not have any suitable random source."; echo - gettext "You will be asked to type a few random keys on your keyboard to generate random bytes."; echo + echo "You do not have any suitable random source" + echo "You will be asked to type a few random keys on your keyboard" + echo "to generate random bytes" nessus-mkrand $HOME/.rnd 1024 - gettext "Press [ENTER] to continue..."; echo + echo "Press [ENTER] to continue..." fi } @@ -116,12 +99,12 @@ NESSUSPUB="$sharedstatedir/nessus/CA" while [ ! -d "$NESSUSPRIV" ]; do - gettext "Nessus server 'private' directory: " + echo_no_nl "Nessus server 'private' directory: " read NESSUSPRIV done while [ ! -d "$NESSUSPUB" ]; do - gettext "Nessus server 'public' directory: " + echo_no_nl "Nessus server 'public' directory: " read NESSUSPUB done @@ -129,34 +112,35 @@ CACERT=$NESSUSPUB/cacert.pem while [ ! -f "$CAKEY" ]; do - eval_gettext "\$CAKEY: not found or not a file." - gettext "Nessus CA private key: " + echo "$CAKEY: not found or not a file" + echo_no_nl "Nessus CA private key: " read CAKEY done while [ ! -f "$CACERT" ]; do - eval_gettext "\$CACERT: not found or not a file." - gettext "Nessus CA certificate: " + echo "$CACERT: not found or not a file" + echo_no_nl "Nessus CA certificate: " read CACERT done for F in "$CAKEY" "$CACERT"; do if [ ! -r "$F" ]; then - eval_gettext "Cannot read \$F" 1>&2; echo; exit 1 + echo "Cannot read $F" 1>&2; exit 1 fi done R=x -while [ "$R" != `gettext "y"` -a "$R" != `gettext "n"` ]; do - gettext "Do you want to register the users in the Nessus server as soon as you create their certificates? (y/n): " +while [ "$R" != "y" -a "$R" != "n" ]; do + echo "Do you want to register the users in the Nessus server " + echo_no_nl "as soon as you create their certificates ? (y/n): " read R done -if [ "$R" = `gettext "y"` ]; then +if [ "$R" = "y" ]; then USERSDIR=$localstatedir/nessus/users while [ ! -d "$USERSDIR" ]; do - eval_gettext "\$USERSDIR: not a directory."; echo - gettext "Users directory? " + echo "$USERSDIR: not a directory" + echo_no_nl "Users directory? " read USERSDIR done else @@ -170,24 +154,23 @@ mkdir $BASEDIR || exit 1 -gettext "This script will now ask you the relevant information to create the SSL client certificates for Nessus."; echo +echo "This script will now ask you the relevant information to create the SSL" +echo "client certificates for Nessus." -gettext "Client certificates life time in days [365]: "; read x +echo_no_nl "Client certificates life time in days [365]:"; read x DFL_CERT_LIFETIME=${x:-365} # Default country = France - Too bad for you, but quicker for my tests! if [ ! -z "$LANG" ]; then DC=`echo $LANG | sed -n 's/^..*_\(..\)$/\1/p'` fi -X=${DC:=FR} -eval_gettext "Your country \${Bo}two letter code\${Bc} [\$X]: "; read x +echo_no_nl "Your country (two letter code) [${DC:=FR}]: "; read x DFL_COUNTRY=${x:-$DC} -gettext "Your state or province name [none]: "; read DFL_PROVINCE -X=Paris; -eval_gettext "Your location \${Bo}e.g. town\${Bc} [\$X]: "; read x +echo_no_nl "Your state or province name [none]: "; read DFL_PROVINCE +X=Paris; echo_no_nl "Your location (e.g. town) [$X]: "; read x DFL_LOCATION=${x:-$X} -gettext "Your organization [none]: "; read DFL_ORGANIZATION -gettext "Your organizational unit [none]: "; read DFL_ORGUNIT +echo_no_nl "Your organization [none]: "; read DFL_ORGANIZATION +echo_no_nl "Your organizational unit [none]:"; read DFL_ORGUNIT # @@ -323,18 +306,19 @@ echo 01 > $BASEDIR/serial touch $BASEDIR/index.txt -echo "**********" -gettext "We are going to ask you some question for each client certificate. "; echo -gettext "If some question has a default answer, you can force an empty answer by entering a single dot '.'"; echo -echo "*********" +echo "********** +We are going to ask you some question for each client certificate +If some question has a default answer, you can force an empty answer by +entering a single dot '.' +*********" -I=1; ANOTHER=`gettext "y"` +I=1; ANOTHER=y -while [ "$ANOTHER" != `gettext "n"` ]; do +while [ "$ANOTHER" != "n" ]; do PSEUDO="" while [ -z "$PSEUDO" ]; do - eval_gettext "User \${Hash}\$I name \${Bo}e.g. Nessus username\${Bc}: " + echo_no_nl "User #$I name (e.g. Nessus username): " read PSEUDO CERTFILE="$BASEDIR/cert_$PSEUDO.pem" KEYFILE="$BASEDIR/key_$PSEUDO.pem" @@ -343,33 +327,28 @@ if [ -f "$CERTFILE" -o -f "$KEYFILE" -o -f "$DNFILE" ]; then A="" while [ -z "$A" ]; do - gettext "Certificate, key or Nessus DN file(s) already exist."; echo - gettext "Do you want to go on and overwrite it/them? (y/n) " + echo "Certificate, key or Nessus DN file(s) already exist." + echo_no_nl "Do you want to go on and overwite it/them? " read A - if [ "$A" = `gettext "n"` ]; then PSEUDO=""; fi + if [ "$A" = "n" ]; then PSEUDO=""; fi done fi done - eval_gettext "Client certificates life time in days [\$DFL_CERT_LIFETIME]: " + echo_no_nl "Client certificates life time in days [$DFL_CERT_LIFETIME]:" read x CERT_LIFETIME=${x:-$DFL_CERT_LIFETIME} - X=$DFL_COUNTRY - eval_gettext "Country \${Bo}two letter code\${Bc} [\$X]: "; read x + echo_no_nl "Country (two letter code) [$DFL_COUNTRY]: "; read x COUNTRY=${x:-$DFL_COUNTRY} - X=$DFL_PROVINCE - eval_gettext "State or province name [\$X]: "; read x + echo_no_nl "State or province name [$DFL_PROVINCE]: "; read x PROVINCE=${x:-$DFL_PROVINCE} - X=$DFL_LOCATION - eval_gettext "Location \${Bo}e.g. town\${Bc} [\$X]: "; read x + echo_no_nl "Location (e.g. town) [$DFL_LOCATION]: "; read x LOCATION=${x:-$DFL_LOCATION} - X=$DFL_ORGANIZATION - eval_gettext "Organization [\$X]: "; read x + echo_no_nl "Organization [$DFL_ORGANIZATION]: "; read x ORGANIZATION=${x:-$DFL_ORGANIZATION} - X=$DFL_ORGUNIT - eval_gettext "Organization unit [\$X]: "; read x + echo_no_nl "Organization unit [$DFL_ORGUNIT]: "; read x ORGUNIT=${x:-$DFL_ORGUNIT} - gettext "e-Mail []: "; read EMAIL + echo_no_nl "e-mail []: "; read EMAIL # Client key openssl genrsa -out $KEYFILE 1024 @@ -411,26 +390,25 @@ # R="$USERSDIR/$PSEUDO/auth/rules" echo - gettext "User rules"; echo + echo "User rules" echo "----------" - eval_gettext "nessusd has a rules system which allows you to restrict the hosts that \$login has the right to test."; echo - gettext "For instance, you may want him to be able to scan his own host only."; echo + echo "nessusd has a rules system which allows you to restrict the hosts" + echo "that $login has the right to test. For instance, you may want" + echo "him to be able to scan his own host only." echo - gettext "Please see the nessus-adduser(8) man page for the rules syntax."; echo + echo "Please see the nessus-adduser(8) man page for the rules syntax" echo - gettext "Enter the rules for this user, and hit ctrl-D once you are done:"; echo - - tmpAddUserFile=$TMPDIR/rules.$$ + echo "Enter the rules for this user, and hit ctrl-D once you are done: " - gettext "(the user can have an empty rules set)"; echo - cat > $tmpAddUserFile || { - echo "Error - could not write $tmpAddUserFile" + echo "(the user can have an empty rules set)" + cat > $TMPDIR/rules.$$ || { + echo "Error - could not write $TMPDIR/rules.$$" exit 1 } - cp $tmpAddUserFile "$USERSDIR/$PSEUDO/auth/rules" + cp $TMPDIR/rules.$$ "$USERSDIR/$PSEUDO/auth/rules" - rm $tmpAddUserFile + rm $TMPDIR/rules.$$ # # create the cert authentication file auth/dname @@ -457,14 +435,14 @@ mkdir -p "$E" chmod 700 "$E" fi - gettext "User added to Nessus."; echo + echo "User added to Nessus." fi - gettext "Another client certificate? (y/n) " + echo_no_nl "Another client certificate? " read ANOTHER I=`expr $I + 1` done -eval_gettext "Your client certificates are in \$BASEDIR."; echo -gettext "You will have to copy them by hand."; echo +echo "Your client certificates are in $BASEDIR +You will have to copy them by hand" Index: nessus-mkcert.in =================================================================== RCS file: /usr/local/cvs/nessus-core/nessus-mkcert.in,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- nessus-mkcert.in 10 Dec 2004 19:41:46 -0000 1.28 +++ nessus-mkcert.in 12 Sep 2006 09:49:05 -0000 1.29 @@ -13,6 +13,26 @@ *) Xn=-n ; Xc= esac + + +test "$1" = "-q" && QUIET=y + + +echo_no_nl () +{ + echo $Xn "$*$Xc" +} + + +header() +{ +clear +echo "-------------------------------------------------------------------------------" +echo " Creation of the Nessus SSL Certificate" +echo "-------------------------------------------------------------------------------" +echo +} +# umask 022 prefix=@prefix@ @@ -32,56 +52,14 @@ } -PATH=$PATH:$sbindir:$bindir:/usr/ssl/bin:/usr/local/ssl/bin:/opt/ssl/bin - - -# check if gettext is present - -if [ -f /usr/bin/gettext.sh ]; -then - - # initialize gettext - - . gettext.sh - export TEXTDOMAIN=nessus-scripts - export TEXTDOMAINDIR=@datadir@/locale - -else - - # define dummy functions - gettext () { - echo $Xn "$1" $Xc - } - eval_gettext () { - eval_gettext_var="echo $1" - echo $Xn `eval $eval_gettext_var` $Xc - } - -fi - -Bo='(' -Bc=')' -test "$1" = "-q" && QUIET=y +PATH=$PATH:$sbindir:$bindir:/usr/ssl/bin:/usr/local/ssl/bin:/opt/ssl/bin -echo_no_nl () -{ - echo $Xn "$*$Xc" -} -header() -{ -clear -echo "-------------------------------------------------------------------------------" -gettext " Creation of the Nessus SSL Certificate"; echo -echo "-------------------------------------------------------------------------------" -echo -} -# if [ -z "$is_cygwin" ]; then @@ -91,12 +69,13 @@ case `id 2>/dev/null` in uid=0*) $sbindir/nessusd -g || { - gettext "Executing nessusd failed. Make sure your library loader is configured properly and that nessusd is in your \$PATH."; echo + echo "Executing nessusd failed. Make sure your library loader is configured properly" + echo "and that nessusd is in your \$PATH" exit 1 } ;; *) - gettext "Only root can use nessus-mkcert."; echo + echo "Only root can use nessus-mkcert" exit 1 esac fi @@ -108,7 +87,8 @@ OpenSSL*) ;; *) - gettext "OpenSSL is not properly installed: The 'openssl' command line utility could not be found (is your \$PATH set properly?)"; echo + echo "OpenSSL is not properly installed (the 'openssl' command line utility could not" + echo "be found (is your \$PATH set properly ?)" exit 1 esac @@ -117,19 +97,19 @@ if [ ! -d "$NESSUSPRIV" ]; then mkdir -p "$NESSUSPRIV" chmod 0700 "$NESSUSPRIV" - echo "$NESSUSPRIV `gettext "created"`" + echo "$NESSUSPRIV created" fi if [ ! -d "$NESSUSPUB" ]; then mkdir -p "$NESSUSPUB" chmod a+rx "$NESSUSPUB" - echo "$NESSUSPUB `gettext "created"`" + echo "$NESSUSPUB created" fi # Check environment if [ -z "$HOME" ]; then - gettext "\$HOME should be defined." 1>&2; echo; exit 1 + echo "HOME should be defined" 1>&2; exit 1 fi @@ -142,10 +122,11 @@ if [. ! -r /dev/random -a ! -r /dev/urandom -a ! -r $HOME/.rnd ]; then header - gettext "You do not have any suitable random source."; echo - gettext "You will be asked to type a few random keys on your keyboard to generate random bytes."; echo + echo "You do not have any suitable random source" + echo "You will be asked to type a few random keys on your keyboard" + echo "to generate random bytes" nessus-mkrand $HOME/.rnd 1024 - gettext "Press [ENTER] to continue..."; echo + echo "Press [ENTER] to continue..." fi } @@ -175,14 +156,16 @@ if [ -z "$QUIET" ]; then header -gettext "This script will now ask you the relevant information to create the SSL certificate of Nessus."; echo -gettext "Note that this information will *NOT* be sent to anybody (everything stays local), but anyone with the ability to connect to your Nessus daemon will be able to retrieve this information."; echo +echo "This script will now ask you the relevant information to create the SSL" +echo "certificate of Nessus. Note that this information will *NOT* be sent to" +echo "anybody (everything stays local), but anyone with the ability to connect to your" +echo "Nessus daemon will be able to retrieve this information." echo echo # -gettext "CA certificate life time in days [1460]: "; read x +echo_no_nl "CA certificate life time in days [1460]: "; read x CACERT_LIFETIME=${x:-1460} -gettext "Server certificate life time in days [365]: "; read x +echo_no_nl "Server certificate life time in days [365]: "; read x SRVCERT_LIFETIME=${x:-365} #cln echo_no_nl "Client certificate life time in days [365]:"; read x #cln CLNCERT_LIFETIME=${x:-365} @@ -193,15 +176,14 @@ # Default country = France # Too bad for you, but quicker for my tests! -X=${DC:=FR} -eval_gettext "Your country \${Bo}two letter code\${Bc} [\$X]: "; read x +echo_no_nl "Your country (two letter code) [${DC:=FR}]: "; read x COUNTRY=${x:-$DC} # -gettext "Your state or province name [none]: "; read x +echo_no_nl "Your state or province name [none]: "; read x PROVINCE=${x:-.} -X=Paris; eval_gettext "Your location \${Bo}e.g. town\${Bc} [\$X]: "; read x +X=Paris; echo_no_nl "Your location (e.g. town) [$X]: "; read x LOCATION=${x:-$X} -X="Nessus Users United"; eval_gettext "Your organization [\$X]: "; read x +X="Nessus Users United"; echo_no_nl "Your organization [$X]: "; read x ORGANIZATION=${x:-$X} # X="Test unit"; echo_no_nl "Your organization unit [$X]:"; read x # ORGUNIT=${x:-$X} @@ -352,7 +334,7 @@ hostname=`hostname` if [ -z "$hostname" ]; then - gettext "An error occured while trying to determine hostname!"; echo + echo "An error occured while trying to determine hostname !" exit 1 fi # The value for organizationalUnitName must be 64 chars or less; @@ -422,6 +404,7 @@ #### + chmod a+r $CACERT $SRVCERT #cln $CLNCERT @@ -446,36 +429,37 @@ if [. -s "$CACERT" -a -s "$CAKEY" -a -s "$SRVCERT" -a -s "$SRVKEY" ]; then - test -z "$QUIET" && gettext "Congratulations. Your server certificate was properly created."; echo + test -z "$QUIET" && echo "Congratulations. Your server certificate was properly created." mv -f "$CF.tmp" "$CF" test -z "$QUIET" && { echo - eval_gettext "\$CF updated"; echo + echo "$CF updated + " #cln echo "Your client certificates are in $BASEDIR #cln You will have to copy them by hand - gettext "The following files were created:"; echo + echo "The following files were created : " echo - gettext ". Certification authority:"; echo - eval_gettext " Certificate = \$CACERT"; echo - eval_gettext " Private key = \$CAKEY"; echo + echo ". Certification authority : " + echo " Certificate = $CACERT" + echo " Private key = $CAKEY" echo - gettext ". Nessus Server : "; echo - eval_gettext " Certificate = \$SRVCERT"; echo - eval_gettext " Private key = \$SRVKEY"; echo + echo ". Nessus Server : " + echo " Certificate = $SRVCERT" + echo " Private key = $SRVKEY" #cln ***** Nessus client ***** #cln Certificate = $CLNCERT #cln Private key = $CLNKEY } else - gettext "An error occured while generating the certificates and/or keys!"; echo + echo "An error occured while generating the certificates and/or keys !" echo - echo_no_nl "`gettext "Do you want to save openssl output in a file for further analysis? (y/n) [y] "`" $Xc + echo_no_nl "Do you want to save openssl output in a file for further analysis ? (y/n) [y] " $Xc read n < /dev/tty - test -z "$n" -o "$n" = `gettext "y"` && { - eval_gettext "Where should I save this file? [\$HOME/openssl-output] " + test -z "$n" -o "$n" = "y" && { + echo_no_nl "Where should I save this file ? [$HOME/openssl-output] " read n < /dev/tty test -z "$n" && n="$HOME/openssl-output" cp "$BASEDIR"/openssl-log "$n" @@ -488,7 +472,7 @@ test -z "$QUIET" && { echo - gettext "Press [ENTER] to exit"; echo; read x + echo "Press [ENTER] to exit"; read x } rm -rf "$BASEDIR" Index: nessus-rmuser.in =================================================================== RCS file: /usr/local/cvs/nessus-core/nessus-rmuser.in,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- nessus-rmuser.in 17 Mar 2005 22:11:07 -0000 1.10 +++ nessus-rmuser.in 12 Sep 2006 09:49:05 -0000 1.11 @@ -26,32 +26,6 @@ nessusd=@sbindir@/nessusd nessusd_users=@sysconfdir@/nessus/nessusd.users -# check if gettext is present - -if [ -f /usr/bin/gettext.sh ]; -then - - # initialize gettext - - . gettext.sh - export TEXTDOMAIN=nessus-scripts - export TEXTDOMAINDIR=@datadir@/locale - -else - - # define dummy functions - - gettext () { - echo $1 - } - - eval_gettext () { - echo $1 - } - -fi - -# # check whether we have echo -n, depending # on the current shell, used case `echo -n` in @@ -63,28 +37,28 @@ then # make sure that we are root case `id` in uid=0*) ;; *) - gettext "Only root should use nessus-rmuser."; echo + echo "only root should use nessus-rmuser" exit 1 esac fi -login="$1" +login=$1 -test -z "$login" && { -echo $Xn "`gettext "Login to remove :"` $Xc" +test -z "$1" && { +echo $Xn "Login to remove : $Xc" read login } test -z "$login" && { - gettext "No login entered" - exit 1 -} + echo "No login entered" + exit 1 + } if [ -d "$localstatedir/nessus/users/$login" ]; then rm -rf "$localstatedir/nessus/users/$login" - gettext "user removed."; echo + echo "user removed." else - gettext "user does not exist"; echo + echo "This user does not exist" fi Index: nessus-services =================================================================== RCS file: /usr/local/cvs/nessus-core/nessus-services,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- nessus-services 14 Feb 2006 12:05:58 -0000 1.10 +++ nessus-services 12 Sep 2006 09:49:05 -0000 1.11 @@ -53,8 +53,8 @@ rlp 39/udp graphics 41/tcp graphics 41/udp -nameserver 42/tcp -nameserver 42/udp +name 42/tcp +name 42/udp nicname 43/tcp nicname 43/udp mpm-flags 44/tcp @@ -99,8 +99,8 @@ [...5151 lines suppressed...] com-bardac-dw 48556/udp compaqdiag 49400/tcp @@ -12065,15 +8849,15 @@ pop3proxy 50002/tcp pop3proxy 50003/tcp pop3proxy 50004/tcp -sockets-de-troi 50505/udp sockets-de-troje 50505/tcp +sockets-de-troi 50505/udp fore 50776/tcp fore 50776/udp dialpad 51210/tcp winshut 53001/tcp bo2k 54320/tcp -bo2k 54321/udp schoolbus 54321/tcp +bo2k 54321/udp ivisit 56768/udp netraider 57341/tcp sap-r3-instgui 59595/tcp Index: nessus.tmpl.in =================================================================== RCS file: /usr/local/cvs/nessus-core/nessus.tmpl.in,v retrieving revision 1.38 retrieving revision 1.39 diff -u -d -r1.38 -r1.39 --- nessus.tmpl.in 10 Dec 2004 15:29:21 -0000 1.38 +++ nessus.tmpl.in 12 Sep 2006 09:49:05 -0000 1.39 @@ -41,9 +41,6 @@ INSTALL=@INSTALL@ INSTALL_DIR=@INSTALL_DIR@ installuser=@installuser@ -localedir=$(datadir)/locale - -VERSION=@NESSUS_MAJOR@.@NESSUS_MINOR@.@NESSUS_PATCH@ # Nessus specific NESSUSD_CONFDIR=@NESSUSD_CONFDIR@ @@ -57,7 +54,7 @@ NESSUSD_PLUGINS=@NESSUSD_PLUGINS@ NESSUSD_REPORTS=@NESSUSD_REPORTS@ -NESSUS_DIRECTORIES="-DNESSUSD_CONFDIR=\"$(NESSUSD_CONFDIR)\"" "-DNESSUSD_STATEDIR=\"$(NESSUSD_STATEDIR)\"" "-DNESSUSD_DATADIR=\"$(NESSUSD_DATADIR)\"" "-DNESSUSD_LIBDIR=\"${NESSUSD_LIBDIR}\"" "-DNESSUSD_PLUGINS=\"${NESSUSD_PLUGINS}\"" "-DNESSUSD_REPORTS=\"${NESSUSD_REPORTS}\"" -DNESSUSD_SHAREDSTATEDIR=\"${NESSUSD_SHAREDSTATEDIR}\" -DNESSUSD_LOGDIR=\"${NESSUSD_LOGDIR}\" -DNESSUS_DOCDIR=\"${NESSUS_DOCDIR}\" +NESSUS_DIRECTORIES="-DNESSUSD_CONFDIR=\"$(NESSUSD_CONFDIR)\"" "-DNESSUSD_STATEDIR=\"$(NESSUSD_STATEDIR)\"" "-DNESSUSD_DATADIR=\"$(NESSUSD_DATADIR)\"" "-DNESSUSD_LIBDIR=\"${NESSUSD_LIBDIR}\"" "-DNESSUSD_PLUGINS=\"${NESSUSD_PLUGINS}\"" "-DNESSUSD_REPORTS=\"${NESSUSD_REPORTS}\"" -DNESSUSD_SHAREDSTATEDIR=\"${NESSUSD_SHAREDSTATEDIR}\" -DNESSUSD_LOGDIR=\"${NESSUSD_LOGDIR}\" # # The server / client modes do not make a lot of sense @@ -104,9 +101,6 @@ USE_GTK = @gtk_flags@ -# Is GNU Gettext available? -USE_GNU_GETTEXT = @gettext_flags@ -DLOCALEDIR=\"$(localedir)\" - # Build with debugging ? DEBUG = @debug_flags@ @@ -114,9 +108,9 @@ USE_LIBWRAP = @uselibwrap@ # Some defines you may want to modify -NESSUS_DEFS=@DEFS@ $(USE_PTHREADS) $(DEBUG) $(USE_GTK) $(USE_LIBWRAP) $(USE_GNU_GETTEXT) +NESSUS_DEFS=@DEFS@ $(USE_PTHREADS) $(DEBUG) $(USE_GTK) $(USE_LIBWRAP) DEFS= -LDFLAGS=@LDFLAGS@ +LDFLAGS= # Your C compiler CC=@CC@ @@ -124,6 +118,8 @@ NASLCONFIG=@NASLCONFIG@ GTKCONFIG_CFLAGS=@GTKCONFIG_CFLAGS@ GTKCONFIG_LIBS=@GTKCONFIG_LIBS@ +GLIBCONFIG_CFLAGS=@GLIBCONFIG_CFLAGS@ +GLIBCONFIG_LIBS=@GLIBCONFIG_LIBS@ DL_LIB=@dl_lib@ RESOLV_LIB=@resolv_lib@ SOCKET_LIB=@socket_lib@ @@ -141,8 +137,6 @@ # documentation MAN_NESSUS_1=@man_nessus_1@ MAN_NESSUSD_8=@man_nessusd_8@ -# where the pdf doc's reside: -NESSUS_DOCDIR=$(datadir)/doc/nessus # C compiler options NESSCFLAGS=@NESSCFLAGS@ _______________________________________________ Nessus-cvs mailing list Nessus-cvs [at] list http://mail.nessus.org/mailman/listinfo/nessus-cvs
|