Merge pull request #446 from ikerexxe/spw_free
lib: check NULL before freeing passwd data
This commit is contained in:
commit
3a0160beb0
@ -93,6 +93,7 @@
|
|||||||
|
|
||||||
void pw_free (/*@out@*/ /*@only@*/struct passwd *pwent)
|
void pw_free (/*@out@*/ /*@only@*/struct passwd *pwent)
|
||||||
{
|
{
|
||||||
|
if (pwent != NULL) {
|
||||||
free (pwent->pw_name);
|
free (pwent->pw_name);
|
||||||
if (pwent->pw_passwd) {
|
if (pwent->pw_passwd) {
|
||||||
memzero (pwent->pw_passwd, strlen (pwent->pw_passwd));
|
memzero (pwent->pw_passwd, strlen (pwent->pw_passwd));
|
||||||
@ -102,5 +103,6 @@ void pw_free (/*@out@*/ /*@only@*/struct passwd *pwent)
|
|||||||
free (pwent->pw_dir);
|
free (pwent->pw_dir);
|
||||||
free (pwent->pw_shell);
|
free (pwent->pw_shell);
|
||||||
free (pwent);
|
free (pwent);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -79,11 +79,13 @@
|
|||||||
|
|
||||||
void spw_free (/*@out@*/ /*@only@*/struct spwd *spent)
|
void spw_free (/*@out@*/ /*@only@*/struct spwd *spent)
|
||||||
{
|
{
|
||||||
|
if (spent != NULL) {
|
||||||
free (spent->sp_namp);
|
free (spent->sp_namp);
|
||||||
if (NULL != spent->sp_pwdp) {
|
if (NULL != spent->sp_pwdp) {
|
||||||
memzero (spent->sp_pwdp, strlen (spent->sp_pwdp));
|
memzero (spent->sp_pwdp, strlen (spent->sp_pwdp));
|
||||||
free (spent->sp_pwdp);
|
free (spent->sp_pwdp);
|
||||||
}
|
}
|
||||||
free (spent);
|
free (spent);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user