Linux wireless drivers development
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Jouni Malinen <j@w1.fi>
Cc: Tomas Winkler <tomasw@gmail.com>,
	"John W. Linville" <linville@tuxdriver.com>,
	Jiri Benc <jbenc@suse.cz>,
	linux-wireless@vger.kernel.org
Subject: Re: [PATCH] hostapd: use eapol frames from ethernet device
Date: Mon, 20 Aug 2007 13:57:15 +0200	[thread overview]
Message-ID: <1187611035.6090.98.camel@johannes.berg> (raw)
In-Reply-To: <20070815041602.GP1415@jm.kir.nu>

[-- Attachment #1: Type: text/plain, Size: 3075 bytes --]

On Tue, 2007-08-14 at 21:16 -0700, Jouni Malinen wrote:

> - user space needs to be able to transmit EAPOL frames encrypted
>   (WPA/WPA2) and in plain (IEEE 802.1X with dynamic WEP) even if keys
>   are configured for the receiver; how is this done for the IEEE 802.1X
>   rekeying case?

Indeed, I hadn't fully considered the rekeying case. However, we
currently injected EAPOL frames via the management interface to achieve
this behaviour, it should be easy to achieve the same via the radiotap
injection interface.

> - management frames will need to be encrypted and decrypted in kernel
>   (802.11w), e.g., when user space is sending and receiving action
>   frames; i.e., there would need to be a mechanism to receive management
>   frames that has been decrypted by the kernel and to be able to send
>   management frames with kernel doing encryption; both are optional and
>   depend on the key configuration for the sender/receiver

Again, when sending them this should be part of the radiotap interface,
reception is a bit more complicated, however; see below.

> - plaintext EAPOL frames need to be received in some cases (mainly, IEEE
>   802.1X with dynamic WEP) even if there is a configured key for the
>   sending; ideally, user space apps would know whether the frame was
>   encrypted or not

If they're received unencrypted they will show up on monitor interfaces
regardless of encryption, they may or may not show up on the
802.3-framed device. Currently, EAPOL packets seem to be allowed
through, but if we go for monitor interfaces we might as well not have
them come through the 802.3-framed interface unless 802.1X is configured
to allow unencrypted frames through.

> I don't really like the idea of having to implement encryption and
> decryption for all these frames in both the user and kernel space.
> Furthermore, some things like receiption of unencrypted EAPOL frames
> would be quite difficult to do in user space unless the kernel were
> actually to help here.

I agree. The radiotap injection provides us with a means to fully
control what is happening when we need to send frames, so I wouldn't
worry about that. If anything, we'd need to extend the radiotap a bit;
there is apparently some work underway to make a "vendor-specific"
extension for radiotap that we could use in Linux.

As for receiving encrypted frames, I recently floated the idea to
introduce a crypto hook very early in frame processing so that to the
rest of the code it looks almost though the hardware was fully capable
of doing hardware offload for all encryption operations (might or might
not include MIC etc).

This has some seemingly weird implications, but ultimately it would mean
that the distinction between software and hardware encryption becomes
transparent at all levels which is a good thing. It would also mean that
the decrypted frames (if decryption was possible) show up on monitor
interfaces with a flag indicating that they were encrypted which should
address all needs here.

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

      reply	other threads:[~2007-08-20 11:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-10 23:48 [PATCH] mac80211: remove special casing of EAPOL on mgmt interface Johannes Berg
2007-08-10 23:53 ` [PATCH] hostapd: use eapol frames from ethernet device Johannes Berg
2007-08-12 10:58   ` Tomas Winkler
2007-08-13  8:51     ` Johannes Berg
2007-08-13 10:46       ` Tomas Winkler
2007-08-13 11:02         ` Johannes Berg
2007-08-14 22:46           ` Tomas Winkler
2007-08-15 10:58             ` Johannes Berg
2007-08-15  4:16           ` Jouni Malinen
2007-08-20 11:57             ` Johannes Berg [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1187611035.6090.98.camel@johannes.berg \
    --to=johannes@sipsolutions.net \
    --cc=j@w1.fi \
    --cc=jbenc@suse.cz \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=tomasw@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox