# HG changeset patch # User Guido Berhoerster # Date 1564511888 -7200 # Node ID fa93d2ff9c6283c11479d1f4d121ff6962e0557c # Parent b5ebed168e591bf76a700ed3e2ec94dcdde6db19 Prevent potential division by zero Add safeguard ensuring that there is at least one possible character to generate passwords from in order to exclude the possibility of a division by zero error in rand_uniform. diff -r b5ebed168e59 -r fa93d2ff9c62 pw.c --- a/pw.c Tue Nov 28 17:16:24 2017 +0100 +++ b/pw.c Tue Jul 30 20:38:08 2019 +0200 @@ -56,6 +56,10 @@ for (i = 0; i < groups_len; i++) { chars_len += strlen(groups[i].chars); } + if (chars_len == 0) { + /* there must be at least one character to choose from */ + return (-1); + } chars = xmalloc(chars_len + 1); chars[0] = '\0';