cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

util.c (590B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * Copyright (C) 2014 Felix Fietkau <nbd@openwrt.org>
      4 */
      5
      6#include "mt7601u.h"
      7
      8void mt76_remove_hdr_pad(struct sk_buff *skb)
      9{
     10	int len = ieee80211_get_hdrlen_from_skb(skb);
     11
     12	memmove(skb->data + 2, skb->data, len);
     13	skb_pull(skb, 2);
     14}
     15
     16int mt76_insert_hdr_pad(struct sk_buff *skb)
     17{
     18	int len = ieee80211_get_hdrlen_from_skb(skb);
     19	int ret;
     20
     21	if (len % 4 == 0)
     22		return 0;
     23
     24	ret = skb_cow(skb, 2);
     25	if (ret)
     26		return ret;
     27
     28	skb_push(skb, 2);
     29	memmove(skb->data, skb->data + 2, len);
     30
     31	skb->data[len] = 0;
     32	skb->data[len + 1] = 0;
     33	return 0;
     34}