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

Commit 542c2d83 authored by Daniel Borkmann's avatar Daniel Borkmann Committed by David S. Miller
Browse files

net: sctp: sctp_ssnmap: remove 'malloced' element from struct



sctp_ssnmap_init() can only be called from sctp_ssnmap_new()
where malloced is always set to 1. Thus, when we call
sctp_ssnmap_free() the test for map->malloced evaluates always
to true.

Signed-off-by: default avatarDaniel Borkmann <dborkman@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 92cf1f23
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -399,7 +399,6 @@ struct sctp_stream {
struct sctp_ssnmap {
	struct sctp_stream in;
	struct sctp_stream out;
	int malloced;
};

struct sctp_ssnmap *sctp_ssnmap_new(__u16 in, __u16 out,
+12 −11
Original line number Diff line number Diff line
@@ -74,7 +74,6 @@ struct sctp_ssnmap *sctp_ssnmap_new(__u16 in, __u16 out,
	if (!sctp_ssnmap_init(retval, in, out))
		goto fail_map;

	retval->malloced = 1;
	SCTP_DBG_OBJCNT_INC(ssnmap);

	return retval;
@@ -118,14 +117,16 @@ void sctp_ssnmap_clear(struct sctp_ssnmap *map)
/* Dispose of a ssnmap.  */
void sctp_ssnmap_free(struct sctp_ssnmap *map)
{
	if (map && map->malloced) {
	int size;

	if (unlikely(!map))
		return;

	size = sctp_ssnmap_size(map->in.len, map->out.len);
	if (size <= KMALLOC_MAX_SIZE)
		kfree(map);
	else
		free_pages((unsigned long)map, get_order(size));

	SCTP_DBG_OBJCNT_DEC(ssnmap);
}
}