More small fixes, entirely to documentation.

This commit is contained in:
Robert J. Hansen
2015-02-08 15:47:40 -05:00
parent 188549680f
commit fd398bcb8c
5 changed files with 9 additions and 158 deletions

View File

@@ -1,5 +1,7 @@
Robert J. Hansen <rjh@secret-alchemy.com>
* nsrlsvr
Early on, Jesse Kornblum provided some patches to improve reporting.
His code has since been overtaken by other code, but I'm grateful
for his work early on in nsrlsvr's life. :)

110
CHANGELOG
View File

@@ -1,110 +0,0 @@
1.4: June 29, 2014
* Added two new applications: nsrlupdate and nsrlappend
* Changed the build process: no longer tries to grab an RDS
1.3.1: May 2014
* Updated to RDS 2.44
1.3: April 2014
* Removed support for SHA-1, SHA-256 and SHA-512 hashes.
* Now stores hashes internally as 128-bit binary values rather than
hex strings, slashing memory usage.
* Old-style (version 1) protocol is deprecated and will be removed
in one year.
1.2.1: March 2014
* Updated to RDS 2.43
1.2.0: January 2014
* Internal changes to dramatically reduce memory fragmentation.
* Internal changes to slightly increase throughput.
* Internal changes to slightly decrease startup time.
1.1.5: August, 2013
* Updated to use the latest NSRL RDS (2.41m).
* The Python data-munging script now works under Python 3.
1.1.4: March 4, 2013
* Restored the ability to use lowercase hex symbols in custom
datasets.
1.1.1: February 22, 2013
* Code cleanups. Now has better support for using custom datasets.
Less dependence on scripts for building.
1.1: May 2, 2012
* Supports version 2 of the wire protocol, which introduces new
commands: STATUS (gives server status), BYE (what it says),
UPSHIFT (attempt to negotiate to a more recent protocol) and
DOWNSHIFT (negotiate to a lower protocol). Version 2 also
supports multiple QUERY commands in a single connection, which
helps a lot when fighting off port exhaustion.
* Switched from blocking I/O to poll()-based I/O. This helps
deal with the out-of-control system loads that some users
were seeing.
* Uses RDS 2.36
1.0.6: January 20, 2012
* Discovered that Win32 I/O redirection didn't work at all.
Whoops. This got fixed.
1.0.5: January 17, 2012
* 1.0.4 added a bad regex that didn't match as much as it
should have. This had the effects of stripping SHA-1 hashes
down to 128 bits. Whoops.
* Now compiles on FreeBSD 9.0.
* nsrlparse became nsrlparse.py
* nsrllookup became nsrllookup.py
* Fixed documentation to reflect these name changes
1.0.4: January 3, 2012
* Added a preflight script to help in development. This has no
effect on end-users.
* Removed a bit of debugging output that was accidentally left
in.
* Moved the 'populate' script to 'nsrlparse' and added it to
the list of installed files
* MD5 is now fully supported, as is interoperability with
md5deep.
1.0.3: January 3, 2012
* Fixed an interoperability bug with sha1deep.
1.0.2: December 30, 2011
* Ubuntu 11.10 complains about handler.cc, on account of how
there are some write() calls that aren't checked for returning
a -1. Virtually all of those were superfluous warnings: one
could possibly have created an intermittent error sooner or
later. They have all been patched, and it now compiles cleanly
on Ubuntu 11.10.
1.0.1: December 30, 2011
* nsrllookup had a bug that would become manifest while querying
millions of records. Now nsrllookup breaks it up into blocks
of 4096 queries (a maximum of 164k of data per connection).
This will hopefully improve performance for those times when
you want to push millions of queries to the server.
1.0: December 30, 2011
* First ready-for-the-users release. The only new feature over
the release candidate series is a much improved installation
procedure.
* It should be possible to make RPMs, Debian packages, or
what-have-you, since the install process is now bog-standard
GNU ./configure && make && make install
1.0rcX: December, 2011
* Ready for limited beta testing. The only change visible to
end users was introducing support for OS X 10.6.
* A bug that prevented reliable functioning on Fedora and OpenSUSE
was found and crushed.
* The internals were ported from a very C-like C++ subset to a
much more C++ code style. This reduced our dependency on GNU
getline(), which had been the major obstacle to OS X 10.6
support.
0.9: December, 2011
* Successfully tested nsrlsvr with the full NIST NSRL RDS on a 4Gb
Apple iMac. It made it completely unusable as a desktop, but was
able to successfully service requests.

View File

@@ -1,25 +0,0 @@
.Dd June 29, 2014
.Dt NSRLAPPEND 1
.Os
.Sh NAME
.Nm nsrlappend
.Nd appends new hashes to an nsrlsvr hash database
.Sh SYNOPSIS
.Nm nsrlappend
.Op Ar filename
.Sh DESCRIPTION
nsrlappend appends new hashes to an existing nsrlsvr hash database.
This can be useful if, for instance, you have a database of known hash
values that are not present in the NSRL RDS which you also wish to be
able to check for.
nsrlappend can read hashes from a file, or if no filename is given,
from standard input. This makes it easy to do something like run
md5deep on a directory and pipe those hashes directly to nsrlappend.
.Sh BUGS
None known.
.Sh SEE ALSO
nsrlsvr(1)
.Sh AUTHOR
Robert J. Hansen <rjh@secret-alchemy.com>

View File

@@ -1,4 +1,4 @@
.Dd January 30, 2012
.Dd February 8, 2015
.Dt NSRLSVR 1
.Os
.Sh NAME
@@ -8,13 +8,10 @@
.Nm nsrlsvr
.Op Fl b
.Op Fl h
.Op Fl o
.Op Fl s
.Op Fl S
.Op Fl v
.Op Fl f Ar RDS-file
.Op Fl f Ar hash-file
.Op Fl p Ar port
.Op Fl t Ar timeout
.Sh DESCRIPTION
nsrlsvr provides a daemon that services queries from clients requesting information
about whether certain hash values are present in the NIST National Software Reference
@@ -25,35 +22,22 @@ Laboratory Reference Data Set (NSRL RDS).
show information on submitting bug reports, then exit
.It Fl h
show a help screen, then exit
.It Fl o
only support the old 1.0 server protocol
.It Fl s
allow clients to query the server status (default: disabled)
.It Fl S
run as a normal process (do not run as a daemon)
.It Fl v
show version information, then exit
.It Fl f Ar RDS-file
specify an alternate RDS file in
.Ar RDS-file
.It Fl f Ar hash-file
specify an alternate hash file in
.Ar hash-file
.It Fl p Ar port
listen on port (default: 9120)
.Ar port
.It Fl t Ar timeout
shut down after
.Ar timeout
seconds of inactivity (default: disabled)
.El
.Sh NOTES
To support the full NSRL RDS requires a lot of memory. Although it will run on
a 4Gb system, the results may be unsatisfactory. A 64-bit OS with at least 8Gb
of RAM is recommended.
.Pp
nsrlsvr treats the
.Ar timeout
value as a guideline. It will not shut down before
.Ar timeout
seconds of inactivity, but it may allow up to thirty seconds more.
.Sh BUGS
None known.
.Sh SEE ALSO

View File

@@ -283,7 +283,7 @@ void show_usage(const char* program_name)
"-v : print version information\n" <<
"-b : get information on reporting bugs\n" <<
"-f : specify an alternate RDS (default: "<< PKGDATADIR <<
"/NSRLFile.txt)\n" <<
"/hashes.txt)\n" <<
"-s : allow clients to query server status (default: disabled)\n" <<
"-h : show this help message\n" <<
"-p : listen on PORT, between 1024 and 65535 (default: 9120)\n\n";