wreq.wi_len = WI_MAX_DATALEN;
bzero((char *)&wreq, sizeof(wreq));
static void wi_dumpinfo(iface)	char			*iface;{	struct wi_req		wreq;	int			i, has_wep;	struct wi_table		*w;	bzero((char *)&wreq, sizeof(wreq));	wreq.wi_len = WI_MAX_DATALEN;	wreq.wi_type = WI_RID_WEP_AVAIL;	wi_getval(iface, &wreq);	has_wep = wreq.wi_val[0];	w = wi_table;	for (i = 0; w[i].wi_type; i++) {		bzero((char *)&wreq, sizeof(wreq));		wreq.wi_len = WI_MAX_DATALEN;		wreq.wi_type = w[i].wi_code;		wi_getval(iface, &wreq);		printf("%s", w[i].wi_str);		switch(w[i].wi_type) {		case WI_STRING:			wi_printstr(&wreq);			break;		case WI_WORDS:			wi_printwords(&wreq);			break;		case WI_BOOL:			wi_printbool(&wreq);			break;		case WI_HEXBYTES:			wi_printhex(&wreq);			break;		default:			break;		}			printf("\n");	}	if (has_wep) {		w = wi_crypt_table;		for (i = 0; w[i].wi_type; i++) {			bzero((char *)&wreq, sizeof(wreq));			wreq.wi_len = WI_MAX_DATALEN;			wreq.wi_type = w[i].wi_code;			wi_getval(iface, &wreq);			printf("%s", w[i].wi_str);			switch(w[i].wi_type) {			case WI_STRING:				wi_printstr(&wreq);				break;			case WI_WORDS:				if (wreq.wi_type == WI_RID_TX_CRYPT_KEY)					wreq.wi_val[0]++;				wi_printwords(&wreq);				break;			case WI_BOOL:				wi_printbool(&wreq);				break;			case WI_HEXBYTES:				wi_printhex(&wreq);				break;			case WI_KEYSTRUCT:				wi_printkeys(&wreq);				break;			default:				break;			}				printf("\n");		}	}	return;}