X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=tunprotocol.cpp;h=7a52362c5482ee8e93a7d0cab04038b9faac2c89;hb=db5c35411fa6e348da943be860beffec71d304eb;hp=534c8bdabfc77bb8aaad6a642fa1a196676f10bd;hpb=47f75fc7569e504a94a601cb3a81793400b134ac;p=greproxy diff --git a/tunprotocol.cpp b/tunprotocol.cpp index 534c8bd..7a52362 100644 --- a/tunprotocol.cpp +++ b/tunprotocol.cpp @@ -39,7 +39,7 @@ int tun_open(const char *name) { } // namespace TUNProtocol::TUNProtocol(const char *devname) - : tunfd(tun_open(devname)) { + : tunfd(tun_open(devname)), seq(0) { } void TUNProtocol::send_packet(uint16_t proto, const string &data, int incoming_seq) @@ -69,7 +69,7 @@ int TUNProtocol::fd() const return tunfd; } -void TUNProtocol::read_packet(Protocol *sender) +void TUNProtocol::read_packet(Sender *sender) { char buf[4096]; int ret = read(tunfd, buf, sizeof(buf)); @@ -89,6 +89,6 @@ void TUNProtocol::read_packet(Protocol *sender) ptr += 2; //fprintf(stderr, "tun packet: flags=%x proto=%x len=%d\n", // flags, proto, ret - 4); - sender->send_packet(proto, string(ptr, buf + ret), -1); + sender->send_packet(proto, string(ptr, buf + ret), seq++); }