static void pwn(const char * fname) { REQUIRE(fname != NULL); struct wif * wi; char crap[2048]; int rc; if (strlen(fname) + 7 >= sizeof(crap)) { printf("Filename too long, aborting\n"); return; } memset(crap, 0, sizeof(crap)); snprintf(crap, sizeof(crap), "file://%s", fname); wi = wi_open(crap); if (!wi) { printf("Bad file - skipping %s\n", fname); return; } while ((rc = wi_read(wi, (unsigned char *) crap, sizeof(crap), NULL)) > 0) process_packet(crap, rc); wi_close(wi); }
static void card_open(struct sstate *ss, char *dev) { struct wif *wi = wi_open(dev); if (!wi) err(1, "wi_open()"); ss->ss_wi = wi; }
static void pwn(char *fname) { struct wif *wi; char crap[2048]; int rc; snprintf(crap, sizeof(crap), "file://%s", fname); wi = wi_open(crap); if (!wi) { printf("Bad file - skipping %s\n", fname); return; } while ((rc = wi_read(wi, (unsigned char*) crap, sizeof(crap), NULL)) > 0) process_packet(crap, rc); wi_close(wi); }
static void wavelan_configure(t_wavelan *wavelan) { if (wavelan->timer_id != 0) { gtk_timeout_remove(wavelan->timer_id); wavelan->timer_id = 0; } if (wavelan->device != NULL) { wi_close(wavelan->device); wavelan->device = NULL; } if (wavelan->interface != NULL) { /* open the WaveLAN device */ if ((wavelan->device = wi_open(wavelan->interface)) != NULL) { /* register the update timer */ wavelan->timer_id = gtk_timeout_add(250, wavelan_timer, wavelan); } } }