-
Notifications
You must be signed in to change notification settings - Fork 678
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support deauthentication codes #349
Conversation
9441169
to
cf53277
Compare
Oops, build failed with latest changes. |
Order and squash other capability bytes Don't set bytes 8-9
cf53277
to
3b791ca
Compare
cd->capabilities[5] = 0x80;//isCntryDefaultSupported | ||
cd->capabilities[5] |= 0x0C; | ||
cd->capabilities[6] = 0x8D; | ||
cd->capabilities[7] = 0x84; // This byte contains Apple Watch unlock |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I checked that bytes 0, 1 and 7 alone are sufficient for Apple Watch unlock. It can only unlock administrative permissions and doesn't try to unlock the lock screen, because AWDL capability is disabled (something in bytes 2-6). If these bytes are set, then it tries to unlock the lock screen too but fails, because AWDL features are not implemented.
Besides, here is an open implementation of AWDL protocol that can be used for reference: https://owlink.org/code/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with you, but I think we should keep this flags on, because we don't know whether these flags will affect other functionalities, the best way is to keep them in dev state. right? also, I think we can comment this for further use(not deleted).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree that bytes 2-6 should be left on, except bits for ARP and NDP offload (we have to find out which bits are they). As bytes 8-9 currently don't seem to enable anything useful, they can be commented out.
memset(hv, 0, sizeof(*hv)); | ||
hv->version = APPLE80211_VERSION; | ||
hv->status = APPLE80211_STATUS_SUCCESS; | ||
hv->status = ic->ic_assoc_status; | ||
XYLog("%s, %d\n", __FUNCTION__, hv->status); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this log should be remove, it will be called for several times when associating.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, can be removed or replaced with a DPRINTF. It was left from debugging.
This reverts commit 0028810.
Pass through deauthentication codes to getDEAUTH and setLinkStatus, so that airportd knows the deauthentication reason and whether it is voluntary (because of setDISASSOCIATE) or caused by AP.
Add noise information in scan results.
Log unhandled set requests when only get is implemented or vice versa.