diff --git a/ChangeLog b/ChangeLog
index ed7bb3375d1c312d64aa53952a16b8ff026078ab..1e3c5e10ab3b006cf5ef3e7d384929d5bbfb18e3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2019-04-14  Niels Möller  <nisse@lysator.liu.se>
+
+	* tools/nettle-pbkdf2.c (main): Check strdup return value.
+
 2019-03-29  Niels Möller  <nisse@lysator.liu.se>
 
 	* aes.h (struct aes_ctx): Redefine using a union of key-size
diff --git a/tools/nettle-pbkdf2.c b/tools/nettle-pbkdf2.c
index fe6528d90a3d644fc5f9f3a34e91b1488c8222ae..9993b301a0b612bb96119ec9ccb576e9dd139abd 100644
--- a/tools/nettle-pbkdf2.c
+++ b/tools/nettle-pbkdf2.c
@@ -144,6 +144,9 @@ main (int argc, char **argv)
     }
 
   salt = strdup (argv[0]);
+  if (!salt)
+    die ("strdup failed: Virtual memory exhausted.\n");
+
   salt_length = strlen(argv[0]);
   
   if (hex_salt)