On Mon, 2015-12-28 at 13:38 +0100, Sabrina Dubroca wrote:
> +#define MACSEC_SCI_LEN 8
> +
> +/* SecTAG length = macsec_eth_header without the optional SCI */
> +#define MACSEC_TAG_LEN 6
> +
> +struct macsec_eth_header {
> + struct ethhdr eth;
> + /* SecTAG */
> + u8 tci_an;
> +#if defi
Sabrina Dubroca wrote:
[ Sorry for long delay ]
> 2015-12-29, 02:14:06 +0100, Florian Westphal wrote:
> > > + tx_sa->next_pn++;
> > > + if (tx_sa->next_pn == 0) {
> > > + pr_notice("PN wrapped, transitionning to !oper\n");
> >
> > Is that _notice intentional?
> > I'm only asking because
2015-12-29, 02:14:06 +0100, Florian Westphal wrote:
> Sabrina Dubroca wrote:
> > + if (h->short_length)
> > + return len == h->short_length + 24;
> > + else
> > + return len >= 72;
> [..]
> > + return len == h->short_length
Sabrina Dubroca wrote:
> + if (h->short_length)
> + return len == h->short_length + 24;
> + else
> + return len >= 72;
[..]
> + return len == h->short_length + 32;
[..]
> + return len >= 80;
[..
This is an implementation of MACsec/IEEE 802.1AE. This driver
provides authentication and encryption of traffic in a LAN, typically
with GCM-AES-128, and optional replay protection.
http://standards.ieee.org/getieee802/download/802.1AE-2006.pdf
Signed-off-by: Sabrina Dubroca
Reviewed-by: Hannes