npm

Nihal's Password Manager (WIP)
git clone git://git.nihaljere.xyz/npm
Log | Files | Refs | README | LICENSE

commit 1451e51c9276ceb46e1f8a0f3d3f88da2992662d
parent 904f76ca0ea5ca5a1cc81877e046cf3ffd73891e
Author: Nihal Jere <nihal@nihaljere.xyz>
Date:   Sun, 10 Oct 2021 18:54:31 -0500

npm-core: mlock only secret data, and do proper error handling

Diffstat:
Mnpm-core.c | 17++++++-----------
1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/npm-core.c b/npm-core.c @@ -92,23 +92,18 @@ int main(int argc, char *argv[]) { /* we want to prevent secret data from being swapped to disk */ if (mlock(plain, sizeof(plain)) < 0) { - fprintf(stderr, "mlock failed: %s", strerror(errno)); - } - - if (mlock(cipher, sizeof(cipher)) < 0) { - fprintf(stderr, "mlock failed: %s", strerror(errno)); + perror( "mlock failed"); + goto fail; } if (mlock(master, sizeof(master)) < 0) { - fprintf(stderr, "mlock failed: %s", strerror(errno)); + perror( "mlock failed"); + goto fail; } if (mlock(key, sizeof(key)) < 0) { - fprintf(stderr, "mlock failed: %s", strerror(errno)); - } - - if (mlock(data, sizeof(data)) < 0) { - fprintf(stderr, "mlock failed: %s", strerror(errno)); + perror( "mlock failed"); + goto fail; } if (strcmp(argv[1], "-e") == 0) {