<refentry id='man-nmap-update'>
  <refmeta>
    <refentrytitle>nmap-update</refentrytitle>
    <manvolnum>1</manvolnum>
    <refmiscinfo class="source">nmap-update</refmiscinfo>
    <refmiscinfo class="manual">nmap-update Reference Guide</refmiscinfo>
  </refmeta>
  <refnamediv id='man-name'>
    <refname>nmap-update</refname>
    <refpurpose>Updater for Nmap's architecture-independent files</refpurpose>
  </refnamediv>
  <refsynopsisdiv id='man-synopsis'>
    <cmdsynopsis>
      <command>nmap-update</command>
      <arg choice='opt'>
        <replaceable>options</replaceable>
      </arg>
      <arg choice='opt' repeat='rep'>
        <replaceable>channel</replaceable>
      </arg>
    </cmdsynopsis>
  </refsynopsisdiv>
  <refsect1 id='man-description'>
    <title>Description</title>
    <para>
    nmap-update is an updater for Nmap's architecture-independent files. It is
    used to keep up to date with changes and new scripts for the Nmap Scripting
    Engine.
    </para>

    <para>
    Updates are distributed in the form of <quote>channels</quote>, which are
    named directories that usually correspond to Nmap version numbers. When
    nmap-update is installed, it will pull from the channel corresponding to the
    version of Nmap it was installed with, until Nmap and nmap-update are
    upgraded as a whole.
    </para>

    <para>
    The program works by updating from a remote Subversion repository. To supply
    authentication credentials, create a configuration file:
    <simplelist>
    <member><filename>/home/<replaceable>user</replaceable>/.nmap/nmap-config.conf</filename>
    on non-Windows systems, or</member>
    <member><filename>C:\Users\<replaceable>user</replaceable>\AppData\Roaming\nmap\nmap-config.conf</filename>
    on Windows.</member>
    </simplelist>
    The contents of the file should be:
<programlisting>
username = <replaceable>username</replaceable>
password = <replaceable>password</replaceable>
</programlisting>
    Alternatively, you can cache your credentials more securely if you have the
    <command>svn</command> command-line program installed. Run the command
    <command>svn ls https://svn.nmap.org/updates</command>, enter your
    credentials, and agree to cache them when asked.
    </para>
  </refsect1>

  <refsect1 id='man-briefoptions'>
    <title>Options Summary</title>
    <variablelist>
      <varlistentry>
        <term><option>-d <replaceable>directory</replaceable></option></term>
        <listitem>
          <para>
          Install to <filename><replaceable>directory</replaceable></filename>.
          Normally installation goes to a suitable place under your home
          directory:
          <filename>.nmap/updates/<replaceable>channel</replaceable></filename>
          on Unix and
          <filename>AppData\Roaming\nmap\updates\<replaceable>channel</replaceable></filename>
          on Windows. This option can be used by root to install updates
          system-wide.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>-h</option></term>
        <term><option>--help</option></term>
        <listitem>
          <para>Show a help message and exit.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>-r</option></term>
        <term><option>--repo</option> <replaceable>repository</replaceable></term>
        <listitem>
          <para>Use the given repository and path rather than the default.
          For example, <option>--repo https://svn.example.com/updates</option>.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>--username</option> <replaceable>username</replaceable></term>
        <listitem>
          <para>Authenticate with the given username.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>--password</option> <replaceable>password</replaceable></term>
        <listitem>
          <para>Authenticate with the given password.</para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term><option>-v</option></term>
        <term><option>--verbose</option></term>
        <listitem>
          <para>Be more verbose. Show the used channel and repository.</para>
        </listitem>
      </varlistentry>
    </variablelist>

    <para>
    Any other arguments are taken to be the names of channels to load from. The
    channels are tried in order until one is successful.
    </para>
  </refsect1>

  <!--
  <refsect1 id='man-legal'>
    &legal-notices;
  </refsect1>
  -->
</refentry>
