Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e0869cc1 authored by Michael Halcrow's avatar Michael Halcrow Committed by Linus Torvalds
Browse files

eCryptfs: use list_for_each_entry_safe() when wiping auth toks



Use list_for_each_entry_safe() when wiping the authentication token list.

Signed-off-by: default avatarMichael Halcrow <mhalcrow@us.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent f4aad16a
Loading
Loading
Loading
Loading
+4 −11
Original line number Diff line number Diff line
@@ -469,26 +469,19 @@ decrypt_pki_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok,

static void wipe_auth_tok_list(struct list_head *auth_tok_list_head)
{
	struct list_head *walker;
	struct ecryptfs_auth_tok_list_item *auth_tok_list_item;
	struct ecryptfs_auth_tok_list_item *auth_tok_list_item_tmp;

	walker = auth_tok_list_head->next;
	while (walker != auth_tok_list_head) {
		auth_tok_list_item =
		    list_entry(walker, struct ecryptfs_auth_tok_list_item,
			       list);
		walker = auth_tok_list_item->list.next;
		memset(auth_tok_list_item, 0,
		       sizeof(struct ecryptfs_auth_tok_list_item));
	list_for_each_entry_safe(auth_tok_list_item, auth_tok_list_item_tmp,
				 auth_tok_list_head, list) {
		list_del(&auth_tok_list_item->list);
		kmem_cache_free(ecryptfs_auth_tok_list_item_cache,
				auth_tok_list_item);
	}
	auth_tok_list_head->next = NULL;
}

struct kmem_cache *ecryptfs_auth_tok_list_item_cache;


/**
 * parse_tag_1_packet
 * @crypt_stat: The cryptographic context to modify based on packet