Denis Kenzior
bc98bc9ecb
eapol: Add functions to set own/ap WPA IEs
...
If EAPoL is being run for in WPA mode, then instead of RSN elements, the
WPA elements are required.
2015-04-10 23:46:58 -05:00
Denis Kenzior
c9f1090380
wiphy: If connection failed, reset the PSK
...
This allows us to retry the agent for the correct passphrase
2015-04-08 15:07:02 -05:00
Denis Kenzior
0b48ba3a4a
wiphy: Use CMD_DISCONNECT, not CMD_DEAUTHENTICATE
...
CMD_DEAUTHENTICATE seems to carry only the management frame pdu
information. CMD_DISCONNECT is carrying the information that is
actually needed by us:
> Event: Disconnect (0x30) len 28 1140.118545
Wiphy: 0 (0x00000000)
Interface Index: 3 (0x00000003)
Reason Code: 2 (0x0002)
Disconnect by AP: true
2015-04-08 15:04:22 -05:00
Denis Kenzior
313dcbb8ff
wiphy: Rework Device.Disconnect() logic
2015-04-08 15:03:28 -05:00
Denis Kenzior
6921e239a4
wiphy: Only support UTF-8 SSIDs
...
We will ignore non-UTF8 based SSIDs. Support for non-UTF8 SSIDs seems
to be of dubious value in the real world as the vast majority of
consumer devices would not even allow such SSIDs to be configured or
used.
There also seems to be no compelling argument to support such SSIDs, so
until that argument arrives, non-UTF8 SSIDs will be filtered out. This
makes the D-Bus API and implementation much easier.
2015-04-08 13:38:41 -05:00
Denis Kenzior
3877a4e5dd
util: Add util_ssid_is_utf8
2015-04-08 13:18:54 -05:00
Denis Kenzior
b2e1c36cbb
wiphy: Stop eapol state machine if disconnecting
2015-03-29 22:50:34 -05:00
Denis Kenzior
445ad55796
eapol: Start a handshake timer
...
We start a timer. This handles the case that the Authenticator does
not send us the first message of the 4-way handshake, or disappears
before sending us the 3rd message.
2015-03-29 22:44:08 -05:00
Denis Kenzior
ecede21c1e
wiphy: Handle handshake failures
2015-03-29 22:32:11 -05:00
Denis Kenzior
3a6c06e85b
wiphy: De-auth if setting key transaction fails
2015-03-29 22:32:11 -05:00
Denis Kenzior
85a5d7ba98
wiphy: Keep track of new/set key command ids
2015-03-29 22:32:11 -05:00
Denis Kenzior
e2badc9828
eapol: Call deauthenticate callback
2015-03-29 22:32:09 -05:00
Denis Kenzior
9f17b71375
eapol: Add eapol_cancel
2015-03-29 20:58:40 -05:00
Denis Kenzior
cf3681efbe
eapol: Add comment for handling MIC failures
2015-03-29 20:57:58 -05:00
Denis Kenzior
f31407dd46
eapol: Add deauthenticate callback
2015-03-29 20:30:14 -05:00
Denis Kenzior
b81e22f809
wiphy: Move reason codes to mpdu.h
2015-03-29 20:27:57 -05:00
Jukka Rissanen
7b945d948f
wiphy: Set the linkmode and operstate of the link
...
We need to set the linkmode and operstate after successful
authentication.
Initial value for linkmode is 1 (user space controlled) and
IF_OPER_DORMANT for opermode. After successful authentication,
the operstate is set to IF_OPER_UP.
More specific details can be seen in kernel sources at
https://www.kernel.org/doc/Documentation/networking/operstates.txt
2015-03-27 13:14:31 -05:00
Jukka Rissanen
6dbd544a55
netdev: Add function to set the linkmode and operstate of the link
...
This is needed after connecting successfully to AP.
2015-03-27 13:13:33 -05:00
Jukka Rissanen
42622525d2
wiphy: Send NL80211_CMD_SET_STATION command to kernel
...
After we have authenticated successfully, send the Set Station
command to kernel so that AP gets authorized.
2015-03-27 13:12:47 -05:00
Denis Kenzior
86ea449cd1
wiphy: Make sure to set user_data
...
This is needed for TK/GTK installation
2015-03-25 23:28:45 -05:00
Denis Kenzior
0412360d77
wiphy: Install group key
2015-03-25 23:28:40 -05:00
Denis Kenzior
6ec364cb86
eapol: Add __eapol_set_gtk_install_func
2015-03-25 23:28:22 -05:00
Denis Kenzior
75bacbb896
wiphy: Install pairwise key
2015-03-25 23:28:18 -05:00
Denis Kenzior
bf5a6a3999
eapol: Add __eapol_set_install_tk_func
2015-03-25 22:35:12 -05:00
Denis Kenzior
ddcbb3f2a8
eapol: Add eapol_sm_set_user_data
2015-03-25 22:34:05 -05:00
Denis Kenzior
d075d49a96
crypto: Use same values as nl80211
2015-03-25 22:33:07 -05:00
Ravi kumar Veeramally
3432cfa53e
eapol: Return if eapol_find_sm returns NULL
2015-03-23 20:08:30 -05:00
Ravi kumar Veeramally
a95b0e3a5a
eapol: Fix return value
2015-03-23 15:37:40 -05:00
Denis Kenzior
842eb643eb
wiphy: Return an error if agent request fails
...
If there is no agent registered, then the caller should not be hanging
without a response forever.
2015-03-20 15:42:50 -05:00
Denis Kenzior
141a1831c0
dbus: Add dbus_error_no_agent
2015-03-20 15:42:39 -05:00
Denis Kenzior
709b94587e
wiphy: Print an error if PMK generation fails
2015-03-20 15:22:44 -05:00
Denis Kenzior
204964fd8d
sha1: Return right away if checksum creation fails
...
This patch covers pbkdf2_sha1 and prf_sha1
2015-03-20 14:56:27 -05:00
Denis Kenzior
86e7883c74
eapol: Print a message if MIC calculation fails
2015-03-20 14:52:49 -05:00
Denis Kenzior
b27c47aa77
sha1: Return right away if l_checksum_new fails
2015-03-20 14:50:57 -05:00
Denis Kenzior
d78883a068
eapol: Add default nonce generator
2015-03-20 12:31:14 -05:00
Denis Kenzior
35e3de9cdf
eapol: Add default eapol tx path function
2015-03-20 12:30:56 -05:00
Denis Kenzior
2598a1efed
wiphy: call eapol_init and eapol_exit
2015-03-20 12:30:24 -05:00
Denis Kenzior
4c351196a9
wiphy: Print errno if read fails
2015-03-20 12:30:11 -05:00
Denis Kenzior
25af920563
wiphy: Separate out the ell include
...
To make it clear it is not a system include
2015-03-20 12:29:50 -05:00
Denis Kenzior
656318ed0c
eapol: Update eapol_tx_packet_func_t declaration
...
Use aa and spa instead of aa_addr and sta_addr
2015-03-20 11:43:42 -05:00
Marcel Holtmann
2c061e6394
wiphy: Fix compiler warning with sizeof function
...
CC src/wiphy.o
src/wiphy.c: In function ‘eapol_read’:
src/wiphy.c:172:24: error: argument to ‘sizeof’ in ‘memset’ call is the same expression as the destination; did you mean to remove the addressof? [-Werror=sizeof-pointer-memaccess]
memset(&sll, 0, sizeof(&sll));
^
2015-03-20 06:43:54 +01:00
Denis Kenzior
0ee173e23f
eapol: Fix PAE socket code
...
Using SOCK_DGRAM allows us to receive just the frame payload instead
of raw ethernet framing.
2015-03-20 00:28:58 -05:00
Denis Kenzior
96cd2391da
wiphy: Start 4-way handshake
2015-03-20 00:27:38 -05:00
Denis Kenzior
2a41fe6dd2
eapol: Add read handler for PAE frames
2015-03-20 00:27:38 -05:00
Denis Kenzior
7835eb8b88
wiphy: Fix style
2015-03-19 23:57:37 -05:00
Jukka Rissanen
24e79280a9
wiphy: DBus reply was sent too early when connecting PSK network
...
We can give reply to connect DBus call in associating event only
when we are connecting to Open network. For PSK AP, the reply can
only be sent after we have finished 4-way handshaking.
2015-03-19 23:57:37 -05:00
Denis Kenzior
19c67c3b3a
eapol: Add user_data argument
...
To __eapol_rx_packet. The same argument is passed to tx_packet
function.
2015-03-19 23:57:37 -05:00
Denis Kenzior
b526df19d6
eapol: Fix __eapol_rx_packet declaration
2015-03-19 23:57:36 -05:00
Denis Kenzior
6b84e0da1f
eapol: Rename aa_addr
...
The use of aa_addr was redundant. Use 'AA' instead. 802.11 defines
'AA' as 'Authenticator Address'.
2015-03-19 23:57:36 -05:00
Denis Kenzior
b871d904d5
eapol: Rename sta_addr
...
The use of sta_addr made no sense. Instead, use the terminology from
802.11: 'Supplicant Address (SPA)'
2015-03-19 23:57:36 -05:00