printk(KERN_DEBUG "wireless_spy_update() :  offset %ld, spydata %p, address %02X:%02X:%02X:%02X:%02X:%02X\n", dev->wireless_handlers->spy_offset, spydata, address[0], address[1], address[2], address[3], address[4], address[5]); 
printk(KERN_DEBUG "wireless_spy_update() :  wireless_data %p, spydata %p, address %02X:%02X:%02X:%02X:%02X:%02X\n", dev->wireless_data, spydata, address[0], address[1], address[2], address[3], address[4], address[5]); 
void wireless_spy_update(struct net_device *	dev,			 unsigned char *	address,			 struct iw_quality *	wstats){	struct iw_spy_data *	spydata = get_spydata(dev);	int			i;	int			match = -1;	/* Make sure driver is not buggy or using the old API */	if(!spydata)		return;#ifdef WE_SPY_DEBUG	printk(KERN_DEBUG "wireless_spy_update() :  offset %ld, spydata %p, address %02X:%02X:%02X:%02X:%02X:%02X\n", dev->wireless_handlers->spy_offset, spydata, address[0], address[1], address[2], address[3], address[4], address[5]);#endif	/* WE_SPY_DEBUG */	/* Update all records that match */	for(i = 0; i < spydata->spy_number; i++)		if(!memcmp(address, spydata->spy_address[i], ETH_ALEN)) {			memcpy(&(spydata->spy_stat[i]), wstats,			       sizeof(struct iw_quality));			match = i;		}	/* Generate an event if we cross the spy threshold.	 * To avoid event storms, we have a simple hysteresis : we generate	 * event only when we go under the low threshold or above the	 * high threshold. */	if(match >= 0) {		if(spydata->spy_thr_under[match]) {			if(wstats->level > spydata->spy_thr_high.level) {				spydata->spy_thr_under[match] = 0;				iw_send_thrspy_event(dev, spydata,						     address, wstats);			}		} else {			if(wstats->level < spydata->spy_thr_low.level) {				spydata->spy_thr_under[match] = 1;				iw_send_thrspy_event(dev, spydata,						     address, wstats);			}		}	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6582c164f2b3b6e58d1f13c1c031b19ee691eb14/wireless.c/buggy/net/core/wireless.c