Index: src/supplicant-manager/nm-supplicant-config.c
===================================================================
--- src/supplicant-manager/nm-supplicant-config.c	(revision 3731)
+++ src/supplicant-manager/nm-supplicant-config.c	(working copy)
@@ -349,7 +349,7 @@
 		/* drivers that support scanning specific SSIDs should use
 		 * ap_scan=1, while those that do not should use ap_scan=2.
 		 */
-		priv->ap_scan = has_scan_capa_ssid ? 1 : 2;
+	  priv->ap_scan = 1; //has_scan_capa_ssid ? 1 : 2;
 	}
 
 	if (!nm_supplicant_config_add_option (self, "ssid",
@@ -383,7 +383,7 @@
 	 * specific SSID we want to associate with.
 	 */
 	if (!is_adhoc) {
-		if (!nm_supplicant_config_add_option (self, "scan_ssid", "1", -1, FALSE))
+		if (!nm_supplicant_config_add_option (self, "scan_ssid", "0", -1, FALSE))
 			return FALSE;
 	}
 
Index: src/nm-device-802-11-wireless.c
===================================================================
--- src/nm-device-802-11-wireless.c	(revision 3731)
+++ src/nm-device-802-11-wireless.c	(working copy)
@@ -2549,6 +2549,12 @@
 		}
 	}
 
+        if(nm_ap_get_ssid (ap)) {
+		nm_info("Setting ssid to %s", nm_utils_escape_ssid (nm_ap_get_ssid (ap)->data, 
+								    nm_ap_get_ssid (ap)->len));
+		nm_device_802_11_wireless_set_ssid (self, nm_ap_get_ssid (ap));
+	}
+
 	if (!nm_supplicant_config_add_setting_wireless (config,
 	                                                s_wireless,
 	                                                nm_ap_get_broadcast (ap),
