On Sun, May 27, 2018 at 10:18:30AM +1000, David Gwynne wrote: > this implements MikroTiks Ethernet over IP protocol support. > > The Mikrotik protocol is basically GRE, so this is implemented as > eoip(4) as (yet another) part of if_gre. the main differences between > egre and eoip is that eoip uses gre version 1 (not 0) and 0x6400 > as the protocol identifier (not transparent ethernet as per rfc > 1701), mandates a key header, but splits the key into 16bit len and > tunnel id fields (a bit like pptp). > > the keepalive semantics are also different. keepalives are just 0 > length packets, and arent echoed. each side listens for the others > packet to see if theyre up, but doesn't relay the keepalives. theyre > more hellos maybe? > > like egre though, it still misaligns the payload, but what doesnt > these days? > > this also tweaks tcpdump to better support the protocol.
Hello, In gre_ioctl(), mgre_ioctl(), egre_ioctl() and eoip_ioctl() the SIOCSIFFLAGS case appears to have code that explicitly sets error=0 but it looks like error is already zero unless I'm reading it wrong. Also, nvgre_ioctl() is different because it seems to set error=ENETRESET in that case (i.e. IFF_UP and IFF_RUNNING are both set). Is that difference intended? - Michael