diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | Makefile | 63 | ||||
-rw-r--r-- | xsum.1 | 88 | ||||
-rw-r--r-- | xsum.texman | 80 |
4 files changed, 117 insertions, 117 deletions
@@ -8,4 +8,5 @@ bin/ *.a *.su *.gch - +*.1 +!/xsum.1 @@ -1,3 +1,5 @@ +.NONPOSIX: + PREFIX = /usr/local BINDIR = $(PREFIX)/bin DATADIR = $(PREFIX)/share @@ -8,7 +10,6 @@ LICENSEDIR = $(DATADIR)/licenses PKGNAME = sha3sum - WARN = -Wall -Wextra -pedantic -Wdouble-promotion -Wformat=2 -Winit-self -Wmissing-include-dirs \ -Wtrampolines -Wfloat-equal -Wshadow -Wmissing-prototypes -Wmissing-declarations \ -Wredundant-decls -Wnested-externs -Winline -Wno-variadic-macros -Wswitch-default \ @@ -46,9 +47,25 @@ shake256sum = SHAKE256 shake512sum = SHAKE512 +MAN1 =\ + keccaksum.1\ + keccak-224sum.1\ + keccak-256sum.1\ + keccak-384sum.1\ + keccak-512sum.1\ + sha3-224sum.1\ + sha3-256sum.1\ + sha3-384sum.1\ + sha3-512sum.1\ + rawshake256sum.1\ + rawshake512sum.1\ + shake256sum.1\ + shake512sum.1 + + .PHONY: all -all: command man +all: command $(MAN1) .PHONY: command @@ -63,18 +80,12 @@ obj/%.o: src/%.c src/*.h $(CC) $(FLAGS) $(COPTIMISE) -c -o $@ $< $(CFLAGS) $(CPPFLAGS) - -.PHONY: man -man: $(foreach C,$(CMDS),bin/$(C).1) - -bin/%.1: xsum.texman - @mkdir -p bin - cat $< | sed -e 's/xsum/$*/g' -e 's/XSUM/$($*)/g' | texman > $@ +%.1: xsum.1 + u=$$(printf '%s\n' $* | tr a-z A-Z); sed -e 's/xsum/$*/g' -e 's/XSUM/'"$$u"'/g' -e 's/Xsum/$($*)/g' < xsum.1 > $@ .PHONY: install -install: install-command install-copyright install-man - +install: install-command install-license install-man .PHONY: install-command install-command: install-keccak install-sha3 install-rawshake install-shake @@ -96,35 +107,15 @@ install-%sum: bin/%sum install -dm755 -- "$(DESTDIR)$(BINDIR)" install -m755 -- $< "$(DESTDIR)$(BINDIR)/$*sum" - -.PHONY: install-copyright -install-copyright: install-license - .PHONY: install-license install-license: install -dm755 -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)" install -m644 -- LICENSE "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)/LICENSE" - .PHONY: install-man -install-man: install-keccak-man install-sha3-man install-rawshake-man install-shake-man - -.PHONY: install-keccak-man -install-keccak-man: $(foreach C,$(KECCAK_CMDS),install-$(C)-man) - -.PHONY: install-sha3-man -install-sha3-man: $(foreach C,$(SHA3_CMDS),install-$(C)-man) - -.PHONY: install-rawshake-man -install-rawshake-man: $(foreach C,$(RAWSHAKE_CMDS),install-$(C)-man) - -.PHONY: install-shake-man -install-shake-man: $(foreach C,$(SHAKE_CMDS),install-$(C)-man) - -.PHONY: install-%sum-man -install-%sum-man: bin/%sum.1 - install -dm755 -- "$(DESTDIR)$(MANDIR)/man1" - install -m644 -- $< "$(DESTDIR)$(MANDIR)/man1/$*sum.1" +install-man: $(MAN1) + mkdir -p -- "$(DESTDIR)$(MANDIR)/man1" + cp -- $(MAN1) "$(DESTDIR)$(MANDIR)/man1/" @@ -133,9 +124,9 @@ uninstall: -rm -- $(foreach C,$(CMDS),"$(DESTDIR)$(BINDIR)/$(C)") -rm -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)/LICENSE" -rmdir -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)" - -rm -- $(foreach C,$(CMDS),"$(DESTDIR)$(MANDIR)/man1/$(C).1") + -cd -- "$(DESTDIR)$(MANDIR)/man1" && rm -- $(MAN1) .PHONY: clean clean: - -rm -r bin obj + -rm -r -- bin obj $(MAN1) @@ -0,0 +1,88 @@ +.TH XSUM 1 sha3sum +.SH NAME +xsum - Compute and check Xsum message digests +.SH SYNOPSIS +.B xsum +[-u | -l | -b | -c] +[-R +.IR rate ] +[-C +.IR capacity ] +[(-N | -O) +.IR output-size ] +[(-S | -B) +.IR state-size ] +[-W +.IR word-size ] +[-Z +.IR squeeze-count ] +[-vx] +.RI [ file \ ...] +.SH DESCRIPTION +Print or check Xsum checksums. If no file +or when the file is -, read standard input. +.TP +.B -u +Output checksums in upper-case hexadecimal representation. (default) +.TP +.B -l +Output checksums in lower-case hexadecimal representation. +.TP +.B -b +Output checksums in binary representation. This suppresses +the filenames and checksum delimiters. Only the checksums +are printed. +.TP +.B -c +Read Xsum sums from the file and check them against +the files on your systems. The input files files +should be formated as the output of this program, or +similarly. This is not going to work if any of the +filenames in the input files starts with a regular +blank space or horizontal tab space, or if they +contain a line feed, carriage return or form feed. +.TP +.B -x +Convert input files from hexadecimal for to binary form +before calculating the checksums. +.TP +.B -v +Print the hashing parameters. +.P +The following options change the hashing parameters: +.TP +.BI -R\ rate +Change the rate. +.TP +.BI -C\ capacity +Change the capacity. +.TP +.BR -N ,\ -O \ \fIoutput-size\fP +Change the output size. +.TP +.BR -S ,\ -B \ \fIstate-size\fP +Change the state size. +.TP +.BI -W\ word-size +Change the word size. +.TP +.BI -Z\ squeeze-count +Change the number of squeezes that is performed. +.SH AUTHORS +Mattias Andrée +.RI < maandree@kth.se > +.SH NOTES +All commands in the sha3sum package allow changing +the hashing parameters. However it is only intended +to be used with +.BR keccaksum (1), +or if you know what you are doing; apart from +.B -N +which is intended to +.I always +be used with +.BR shake256sum (1), +.BR shake512sum (1), +.BR rawshake256sum (1), +and +.BR rawshake512sum (1). diff --git a/xsum.texman b/xsum.texman deleted file mode 100644 index 216b758..0000000 --- a/xsum.texman +++ /dev/null @@ -1,80 +0,0 @@ -@c -*- texinfo -*- -@texman{xsum}{1}{November 14 2014} - -@section Name -xsum - compute and check XSUM message digests - -@section Synopsis -@b{xsum} [option...] [--] [file...] - -@section Description -Print or check XSUM checksums. If no file -or when the file is -, read standard input. - -@item @b{-h}, @b{--help} -Display option summary. - -@item @b{-u}, @b{--upper}, @b{--uppercase}, @b{--upper-case} -Output checksums in upper-case hexadecimal representation. (default) - -@item @b{-l}, @b{--lower}, @b{--lowercase}, @b{--lower-case} -Output checksums in lower-case hexadecimal representation. - -@item @b{-b}, @b{--binary} -Output checksums in binary representation. This suppresses -the filenames and checksum delimiters. Only the checksums -are printed. - -@item @b{-x}, @b{--hex}, @b{--hex-input} -Convert input files from hexadecimal for to binary form -before calculating the checksums. - -@item @b{-c}, @b{--check} -Read XSUM sums from the file and check them against -the files on your systems. The input files files -should be formated as the output of this program, or -similarly. This is not going to work if any of the -filenames in the input files starts with a regular -blank space or horizontal tab space, or if they -contain a line feed, carriage return or form feed. - -@item @b{-v}, @b{--verbose} -Print the hashing parameters. - -@item The following options change the hashing parameters: - -@item @b{-R}, @b{--bitrate}, @b{--rate} RATE -Change the rate. - -@item @b{-C}, @b{--capacity} CAPACITY -Change the capacity. - -@item @b{-N}, @b{-O}, @b{--output-size}, @b{--output} SIZE -Change the output size. - -@item @b{-S}, @b{-B}, @b{--state-size}, @b{--state} SIZE -Change the state size. - -@item @b{-W}, @b{--word-size}, @b{--word} SIZE -Change the word size. - -@item @b{-Z}, @b{--squeezes} COUNT -Change the number of squeezes that is performed. - - -@section Author - -Written by Mattias Andrée. - - -@section Note - -All commands in the sha3sum package allow changing -the hashing parameters. However it is only intended -to be used with @b{keccaksum}, or if you know what you -are doing; apart from @b{--output} which is intended -to @emph{always} be used with @b{shake256sum}, -@b{shake512sum}, @b{rawshake256sum} and @b{rawshake512sum}. - -@bye - |