# checksum 1.5.8.4

Another Beta release of checksum is available.

NOTE: to get version update notifications for beta releases, enable the beta_channel preference.

Changes..

~   Faster string search routines (now almost twice as fast). This impacts
hash synchronization, checking files from the list of existing hashes. I
have tested the new routines against a range of strange foreign
languages and Unicode characters with 100% success.

*   Fixed sync issue when using absolute paths inside root hashes. This was

*   Fixed issue with hash comments not respecting the always_store_unc pref
(they were using UNC-style paths even when this was disabled - it caused
no issue, but looked incongruous).

*   Fixed a bug in applying unified extension to multiple legacy hash files.
This almost never happens, but if you happen to have .md5/.sha1/.blake2
hash files for a file and applied a unified extension, hashes for second
and subsequent algorithms were being re-calculated.

Full details in the itstory.

You can grab this latest checksum (and simple checksum) beta from the usual place.

for now.

;o) Cor

# checksum 1.5.7.0

Another Beta release of checksum is available.

NOTE: to get version update notifications for beta releases, enable the beta_channel preference.

Changes..

+   Added search + verify command to checksum's default installed Explorer
context commands. It's that handy! (see 1.5.6.3 changes)

If you want this NOW, either uninstall+reinstall checksum (all your
settings will remain intact) or else merge the sample registry file
found here: http://corz.org/windows/software/checksum/files/

++  Directory Exclude Masks. You can now specify one or more directories
which you would like to exclude from the hash creation process, using
standard file masks (?,*). The "x" switch, followed by a set of exclude
with a comma.

For example, you want to create a root hash, but not hash any
directories who's names begin with "Foo", or end with "Bar", or starts
with "baz" AND ends "qux", do..

checksum.exe cr1x(foo*,*bar,baz*qux) "D:\MyDir"

*   Fixed long path handling in search+verify function - Of course Explorer
is sending short paths. Doh!

Full details in the itstory.

You can grab this latest checksum (and simple checksum) beta from the usual place.

for now.

;o) Cor

# checksum 1.5.6.3

Another Beta release of checksum is available.

NOTE: to get version update notifications for beta releases, enable the beta_channel preference.

New features..

++  checksum will now post the path that was hashed/verified in the final
tooltip, in case you forgot what it was you were hashing, e.g..

checksum completed verifying: e:\music\jazz\ in 3.55 seconds.. [100% OK]

++  Added new method (actually, the original method!) for testing
writeability of directories. Normally we use the most accurate method,
which is to write an actual test file to the directory. However, this

If you would prefer this to /not/ happen, you can do (in checksum.ini)..

relaxed_write_test=true

directory. This works in most ordinary scenarios.

++  Added Individual file verification search feature. This enables you to
verify a single file, anywhere in your system, /from/ anywhere in your
system, regardless of where its associated .hash file is in the file
tree.

This is extremely useful when you want to verify a single file but don't
have an individual .hash for it, especially when the entry is inside a
.hash file with thousands or millions of other entries, or you aren't
sure exactly which .hash file contains the entry.

Normally, for verification you feed checksum .hash (or .md5, whatever)
files and it scans them looking for matching files to hash. Using /this/
method, you feed checksum a regular file path and it scans your .hash
files looking for a matching hash entry!

checksum will search up the tree, first looking for matching individual
.hash files, and then folder hashes, all the way up to the root of the
volume until it finds one containing a hash for your file, at which
point it will verify that one hash and return the result.

The final dialog will also tell you *which* .hash file contained the

Thanks to Brett Lang for the original idea, which he presented to me as
a DOS batch script doing a similar thing. I have to admit, it took me a
while to get my head around the idea (it's just so back-to-front!), but
once I did, I immediately saw how useful such a feature might be.

You can enable this operation by using an "i" on the command-line, think
"individual" file verification, or perhaps "Inverted operation"! e.g..

checksum.exe vi "C:\some\path\to\file.ext"

This works best as an Explorer context command. Future versions may have
this built-in to the installer setup. For now, an example .reg file is
at http://corz.org/windows/software/checksum/files/

Full details in the itstory.

You can grab this latest checksum (and simple checksum) beta from the usual place.

for now.

;o) Cor

# checksum 1.5.4.4

Another Beta release of checksum is available.

NOTE: to get version update notifications for beta releases, you need to enable the beta_channel preference.

New features..

++  Exit command..

checksum can now launch another program/process/task on completion of
its job.

NOTE: you can use @tokens in this setting, including the new @exit
token, which will transform into checksum's exit code, to pass to the
program..

exit_command=c:\path\to\my\app.exe /foo @exit

There is also a special @fullpath token which you can use to insert the
full path of the item that was originally sent to checksum, and
@fullpathnounc, which does the same thing, except the path will NOT be
a UNC-style path, e.g..

@fullpath       = \\?\C:\path\to\my\stuff
@fullpathnounc  = C:\path\to\my\stuff

FYI, using the @item token would get you "stuff" in this example.

You can enable processing of the exit command by either setting..

do_exit_command=true

.. in your ini file, or by passing the "0" switch on your command-line
(zero, no quotes - think standard exit code). If it is enabled in your
ini, you can temporarily disable it by passing "-0".

++  Custom blake2 extension. You might prefer "b2" or "blake2s" or something
else. Simply set the blake_name preference..

blake_name=blake2

++  Added count to final dialog, so you always know exactly how many files
were hashed at-a-glance. I can't believe I didn't think of this! Thanks

+   Improved responsiveness of initial HotKey modifiers (Shift & Ctrl) so
that one should only need to hold them down momentarily, as opposed to
waiting for the options dialog (for example) to appear. Most people will
probably not notice any difference.

*   Fixed an issue which caused checksum to crash when the max folders limit
is reached. Of course, you could increase this in your checksum.ini, but
still, it wasn't being handled. checksum will now automatically increase
the folder limit if required.

~   Removed Max Folders preference (due to above - new automatic limit).

*   The "checksum was given nothing to do" dialog has been made *much*
smaller and now always opens a web page in your browser with more help
than can be fit into a dialog window. (it tells you it has done this).
With the advent of the new startup command facility (v1.5.2.0+), I
expect less people will be seeing that dialog, anyway.

Full details in the itstory.

You can grab this latest checksum (and simple checksum) beta from the usual place.

for now.

;o) Cor

# A.R.S.E 2.5

The Automatic Router Scripting Engine has had a major update. In short, it can now work with ANY device that supports telnet. Perhaps it's time for a change of name!