non-existant private data as error.
2008-12-15 Corinna Vinschen <corinna@vinschen.de>
+ * setpwd.cc (client_request_setpwd::serve): Don't treat removing
+ non-existant private data as error.
+
+2008-12-15 Corinna Vinschen <corinna@vinschen.de>
+
* setpwd.cc (client_request_setpwd::serve): Explicitely erase password
buffer content after usage.
status = LsaStorePrivateData (lsa, &key, data.Length ? &data : NULL);
if (data.Length)
memset (data.Buffer, 0, data.Length);
- if (NT_SUCCESS (status))
+ /* Success or we're trying to remove a password entry which doesn't exist. */
+ if (NT_SUCCESS (status)
+ || (data.Length == 0 && status == STATUS_OBJECT_NAME_NOT_FOUND))
error_code (0);
else
error_code (LsaNtStatusToWinError (status));