wlan: Fix multiple issues with iw_softap_getassoc_stamacaddr()

It was reported that the netd process was crashing due to an error in
iw_softap_getassoc_stamacaddr().  Analysis of this function revealed
multiple issues:
- wrong data length value was being returned to userspace.
- data length format was not 32U/64K safe.
- copy_to_user() was being used inefficiently.
- there was unnecessary NUL termination of the returned data.
Fix these issues.

In addition flaws were identified in the userspace code for which a
separate change needs to be made (CR 639046).

Change-Id: Iee5fd9c33f53c0be7c7dcb45b2008f003e92c86f
CRs-fixed: 639043
prima: Configure MC add. list in f/w after new IPV6 address.

when a new ipv6 address is generated the callback is invoked
we need to reconfigure the ns offload as well as the multicast
address list in f/w. The registeration of callback is done
independent of ns offload and must be done only once so moving
it to suspend path.

Change-Id: Iae1fa13d915d9879a5ec8206986b98905c3d4d72
CRs-fixed: 635149
wlan: Handling different connect states in virtual interface removal

If driver deletes the self interace before cleaning up the
connection it leaves the FW in invalid state after which
scan get stuck with failure response from the FW.

Handling the disconnecting and connecting state when stop
adatper is called.

Change-Id: I0db2b1cb24e599a0e0d4cbe7a330150754e8886e
CRs-Fixed: 620352
wlan: Revision 3.2.3.283

Revision 3.2.3.283

Change-Id: I4a802fc42361dcd62582d09a08ce78730bedc59e