diff options
Diffstat (limited to 'src/p2p')
| -rw-r--r-- | src/p2p/p2p.h | 4 | ||||
| -rw-r--r-- | src/p2p/p2p_go_neg.c | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/p2p/p2p.h b/src/p2p/p2p.h index da2446df..6b0ba800 100644 --- a/src/p2p/p2p.h +++ b/src/p2p/p2p.h @@ -705,6 +705,7 @@ struct p2p_config { * @ctx: Callback context from cb_ctx * @src: Source address of the message triggering this notification * @dev_passwd_id: WPS Device Password ID + * @go_intent: Peer's GO Intent * * This callback is used to notify that a P2P Device is requesting * group owner negotiation with us, but we do not have all the @@ -713,7 +714,8 @@ struct p2p_config { * PIN or PBC button press. This information can be provided with a * call to p2p_connect(). */ - void (*go_neg_req_rx)(void *ctx, const u8 *src, u16 dev_passwd_id); + void (*go_neg_req_rx)(void *ctx, const u8 *src, u16 dev_passwd_id, + u8 go_intent); /** * go_neg_completed - Notification of GO Negotiation results diff --git a/src/p2p/p2p_go_neg.c b/src/p2p/p2p_go_neg.c index 98abf9d2..63837ebc 100644 --- a/src/p2p/p2p_go_neg.c +++ b/src/p2p/p2p_go_neg.c @@ -668,7 +668,9 @@ void p2p_process_go_neg_req(struct p2p_data *p2p, const u8 *sa, MAC2STR(sa)); status = P2P_SC_FAIL_INFO_CURRENTLY_UNAVAILABLE; p2p->cfg->go_neg_req_rx(p2p->cfg->cb_ctx, sa, - msg.dev_password_id); + msg.dev_password_id, + msg.go_intent ? (*msg.go_intent >> 1) : + 0); } else if (p2p->go_neg_peer && p2p->go_neg_peer != dev) { p2p_dbg(p2p, "Already in Group Formation with another peer"); status = P2P_SC_FAIL_UNABLE_TO_ACCOMMODATE; |
