Julian Elischer wrote:
ok so here's my final patch.
This is taken against -current. so it may not patch exactly cleanly.
it's not quite minimal as I'm cleaning up something too, but
could you check it works?
Works with 7.2. Thanks!
if you have ipv6 it might be nice to check that ipv6 doesn
Julian Elischer wrote:
I'll get that checked in!
Please, also take a look at
_syncache_add() in tcp_syncache.c
There is some code which looks strange, at least at first sight. Won't
bcopy() overwrite assigned value of sc->sc_inc.inc_fibnum ?
/* XXX-BZ this fib assignment is just u
CK still uses wrong interface.
ip_output() uses struct inpcb *inp argument to set fib. But when
syncache_respond() sends SYN+ACK, ip_output() is being called without
inp (from netinet/tcp_syncache.c, syncache_respond()):
error = ip_output(m, sc->sc_ipopts, NULL, 0, NULL, NULL);
It I add
M_SETFIB(m,
Julian Elischer wrote:
great.. in your simple server, can you do the sockopt on the socket
AFTER you did the listen()?
(just as a test).
Doesn't help. I have also tried to add setsockopt() after accept() (for
a new socket) and in this case the only packet that is being sent out
via wrong i
Julian Elischer wrote:
does it still fail if you run it in foreground mode (no daemonizing)?
Yes. I actually test sshd in foreground mode (-D tells sshd to not go
into background). I have also checked a very simple client/server where
server called setsockopt(SO_SETFIB, 1) and got the same
Julian Elischer wrote:
r61net-fbsdhost-1, / # setfib 1 /usr/sbin/sshd -o 'ListenAddress
195.208.245.229:' -D
Are you running this from inetd?. (doesnt look like it)
No, I run this from shell merely for test purposes. First I tried to
start sshd in a usual way in a jail, but came to thi
7961(0) ack 2484180117 win 65535
18:01:56.665798 IP brain.cc.rsu.ru.50435 > stat.r61.net.: . ack 1 win 8326
and no packets at em0. TCP connection establishes but no data packets
come from daemon which is rather weird.
I would appreciate any help with this issue.
--
Oleg Sharo