Hello, - v3: patch 6 was breaking patch 9. Small optimization in patch 5 - v2: Applied comments from Daniel Wagner on patches 2, 3, 5, 6, 8 and 19
Here is the preliminary logic for Connect/Disconnect for P2P Peers. What it does: - Provide DBus Connect/Disconnect method for Peer object - connects a peer properly ONLY when the peer ends up as a group client* - Using WPS PBC only (no Agent required since PIN is not supported yet) - disconnect a peer proerly ONLY when the peer was a group client* What's next: - Add support for group ownership properly (gsupplicant and wifi plugin) - Add support for WPS PIN (Agent API upgrade) It's probably hidding many bugs, so this is still very much experimental. Note: you need the very latest git trunk version of wpa_supplicant to get this working, plus this patch for it: http://lists.shmoo.com/pipermail/hostap/2014-July/030616.html Most of the patches don't mess with the other features, so it should not generate collateral damage. Only patches 19-20 have some implications though I did not get any error while testing. (*: ConnMan sets the go intent to 7 by default, so for testing: make sure the other end as a higher go intent. At least for now.) Tomasz Bursztyka (32): gsupplicant: Use StopFind instead of Flush to detect P2P support gsupplicant: Check whether or not a peer support WPS PBC gsupplicant: Add a function to set the P2P device name gsupplicant: Always call peer_lost callback when removing a peer gsupplicant: Add P2P group related signal handlers gsupplicant: Add support for peer PropertiesChanged signal gsupplicant: Add PeerJoined and PeerDisconnected group signals handlers gsupplicant: Add a callback and helpers to get peer's status gsupplicant: Relate the connecting peer with the newly started group gsupplicant: Provide an accessor for a peer to get it's group interface gsupplicant: Add function to connect/disconnect a peer peer: Make a relation between a peer and a device peer: Add a function to get the peer identifier peer: Add the ability to register/unregister a peer driver peer: Add a reference counting mechanism for peer objects dbus: Factorize pending reply generic functions out of service.c peer: Fix peers list change notification peer: Add the basic logic for peer state handling dhcp: Make dhcp running on ipconfig so network is optional dhcp: Make possible to provide user data when starting dhcp peer: Basic integration of ipconfig within a peer peer: Add DBus support for peer's ipconfig object peer: Connect and Disconnect methods implementation peer: Add the notion of sub-device used when connected. wifi: Technology driver registration returns 0 on success wifi: Set the proper P2P device name if P2P is supported wifi: Provide a peer driver to connect/disconnect a peer wifi: Handle incoming p2p device chicken and egg problem wifi: Support peer's state changed when connecting or being notified wifi: Set the sub-device for the connecting peer test: Improve p2p test script to handle Peer's signal plus fixes client: Add suport for connecting and disconnecting a peer Makefile.am | 5 +- client/commands.c | 33 ++- client/dbus_helpers.c | 2 +- gsupplicant/gsupplicant.h | 44 +++- gsupplicant/supplicant.c | 654 +++++++++++++++++++++++++++++++++++++++++++++- include/dbus.h | 3 + include/peer.h | 41 ++- plugins/wifi.c | 304 +++++++++++++++++++-- src/connman.h | 11 +- src/dbus.c | 32 +++ src/dhcp.c | 373 +++++++++++++------------- src/network.c | 22 +- src/peer.c | 509 +++++++++++++++++++++++++++++++++--- src/service.c | 37 +-- test/p2p-on-supplicant | 33 ++- 15 files changed, 1791 insertions(+), 312 deletions(-) -- 1.8.5.5 _______________________________________________ connman mailing list [email protected] https://lists.connman.net/mailman/listinfo/connman
