Changing ESSID

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi list.
   How can I change the wireless access point via programming code in
maemo platform? I have the following piece of code that works
perfectly in my laptop, but when used in maemo, the wlan0 interface
disconnect but not reconnect to the new ESSID.
    Any suggestion? Thanks

Leandro.

int setEssid (char iface[6], char essid[IW_ESSID_MAX_SIZE]) {
	int soc;
	struct iwreq wrq;

	cout << "Changing Access Points...";
	strcpy(wrq.ifr_name, iface);
	wrq.u.essid.pointer = (caddr_t)essid;
	wrq.u.essid.length = strlen(essid)+1;
	wrq.u.essid.flags = 1;

	soc = socket(AF_UNIX, SOCK_DGRAM, 0);
	if (ioctl(soc, SIOCSIWESSID, &wrq) < 0) {
		printf("Error setting ESSID on %s: %s\n", iface, strerror(errno));
		close(soc);
		exit(-1);
	} else {
		cout << " done!\n";
	}
	
	return 1;
}


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Big List of Linux Books]    

  Powered by Linux