<div>I have four patches. They all depend on each other, and have to be applied in order, except that you can skip the second if you want.<br></div><div><br></div><div>The first cleans up the style in password.c.<br></div><div><br></div><div>The second switches from sigaction() to signal() in read_password(). This improves simplicity and readability, but theoretically reduces portability. Since I'm not sure which is more important, I included the patch. If you don't like it, you can skip it without conflicting with any other patch.<br></div><div><br></div><div>The third changes update_password() to use a flag instead of checking what command is running. It also changes every command that uses update_password() to use this flag. I kept this change as simple as possible (e.g. not allowing both flags at once, because it wasn't allowed before) so as to reduce breakage. It doesn't break chsh.<br></div><div><br></div><div>The last fixes a bug in chsh.<br></div><div><br></div><div class="protonmail_signature_block"><div class="protonmail_signature_block-user protonmail_signature_block-empty"><br></div><div class="protonmail_signature_block-proton">Sent with <a target="_blank" href="https://protonmail.com">ProtonMail</a> Secure Email.<br></div></div><div><br></div>