connection_manager: one method for direct connect establishment
Currently in stack we have two methods for establishing direct conenct: * create_le_connection * direct_connect_add create_le_connection is making direct call to GD to schedule direct connection. It relies on timer in GD to stop the attempt after 30 seconds. It doesn't track which app requested direct connect, so it can't properly cancel direct connect if request was made from multiple clients, and just one cancels it. direct_connect_add keeps track of clients that made a request, but it works only if it's the only function used to establish direct connect. If create_le_connection, or GD is called directly, the counting breaks. The logic for scheduling/canceling direct connect using direct_connect_add was already tested in unit tests, but when create_le_connection is in use through the stack, those tests don't reflect the stack behavior. In create_le_connection, some extra address checks and lookups were added to prevent stack from attempting direct connect to targetted announcements. These are copied to direct_connect_add. Test: atest net_test_conn_multiplexing Bug: 372202918 Flag: EXEMPT, covered under unittests Change-Id: I76b2a4d5012fe473aa01a3df89e7b4794689a1d6
Loading
Please register or sign in to comment