Package: xkcdpass
Version: 1.19.9+dfsg1-1
Severity: minor

Dear Maintainer,

I was testing a new wordlist composed entirely of 4 chacter words 
and kept getting the following error message:

Error: provided arguments result in zero-length wordlist, exiting.


In the process of examining this I realised that the man page was
incorrect.

It reads: 

       --min MIN_LENGTH
          Generate passphrases containing at least MIN_LENGTH words. (Default: 
5)

       --max MAX_LENGTH
          Generate passphrases containing at most MAX_LENGTH words. (Default: 9)

implying that these options control words per passphrase (similar to -n).

However the -h option to xkcdpass correctly documents that they actually
control letters per word:

usage: xkcdpass [-h] [-w WORDFILE] [--min MIN_LENGTH] [--max MAX_LENGTH] [-n 
NUM_WORDS | -a ACROSTIC] [-i] [-v VALID_CHARS] [-V] [-c COUNT] [-d DELIM] [-R] 
[-D VALID_DELIMITERS] [-s SEP] [-C CASE]
                [--allow-weak-rng]

options:
  -h, --help            show this help message and exit
  -w, --wordfile WORDFILE
                        Specify that the file WORDFILE contains the list of 
valid words from which to generate passphrases. Multiple wordfiles can be 
provided, separated by commas. Provided wordfiles: eff-long
                        (default), eff-short, eff-special, legacy, spa-mich 
(Spanish), fin-kotus (Finnish), fr-freelang (French), fr-corrected.txt 
(French), pt-ipublicis (Portuguese), ger-anlx (German),
                        eff_large_de_sample.wordlist (German), nor-nb 
(Norwegian)
  --min MIN_LENGTH      Generate passphrases containing words with at least 
MIN_LENGTH characters.
  --max MAX_LENGTH      Generate passphrases containing words with at most 
MAX_LENGTH characters.
  -n, --numwords NUM_WORDS
                        Generate passphrases containing exactly NUM_WORDS words.
  -a, --acrostic ACROSTIC
                        Generate passphrases with an acrostic matching ACROSTIC.
  -i, --interactive     Generate and output a passphrase, query the user to 
accept it, and loop until one is accepted.
  -v, --valid-chars VALID_CHARS
                        Limit passphrases to only include words matching the 
regex pattern VALID_CHARS (e.g. '[a-z]').
  -V, --verbose         Report various metrics for given options.
  -c, --count COUNT     Generate COUNT passphrases.
  -d, --delimiter DELIM
                        Separate words within a passphrase with DELIM.
  -R, --random-delimiters
                        Use randomized delimiters between words. --delimiter 
will be ignored
  -D, --valid-delimiters VALID_DELIMITERS
                        A string with all valid delimiter characters. For 
example, '^&*' would use ^, &, or *
  -s, --separator SEP   Separate generated passphrases with SEP.
  -C, --case CASE       Choose the method for setting the case of each word in 
the passphrase. Choices: ['as-is', 'lower', 'upper', 'first', 'capitalize', 
'alternating', 'random'] (default: 'lower').
  --allow-weak-rng      Allow fallback to weak RNG if the system does not 
support cryptographically secure RNG. Only use this if you know what you are 
doing.


The default --min value of 5 meant that none of the words in my list of
four letter words were usable.

-- System Information:
Debian Release: 13.3
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 6.12.63+deb13-amd64 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages xkcdpass depends on:
ii  python3                3.13.5-1
ii  python3-pkg-resources  78.1.1-0.1

xkcdpass recommends no packages.

xkcdpass suggests no packages.

-- no debconf information

Reply via email to