On 2014/11/20 15:50, Jason Wang wrote: >>> Maybe just initialize iov unconditionally at the beginning and check >>> >> dot1q_buf instead of iov for the rest of the functions. (Need deal with >>> >> size < ETHER_ADDR_LEN * 2) >> > More complicated, because we can't initialize iov when >> > "size < ETHER_ADDR_LEN * 2". >> > >> > Best regards, >> > -Gonglei >> > > Probably not: you can just do something like: > > if (dot1q_buf && size < ETHER_ADDR_LEN * 2) { > dot1q_buf = NULL; > } > > and check dot1q_buf afterwards. Or just drop the packet since its size > was less than mininum frame length that Ethernet allows.
Sorry, I don't understand. But, what's your meaning "initialize iov unconditionally at the beginning"? Best regards, -Gonglei