>I'm running Solaris 8 with ipfilter 3.4.28 and I'm seeing something rather
>strange occurring when I run /usr/sbin/modinfo. Specifically, I have the
>following situation:
>
> A ------ B ------- C
>
>Machines A, B, and C are running Solaris 8, with B and C additionally running
>IPFilter. A routes through B to get to C. I can SSH from A to C and from A to
>B successfully - I'm using the normal "flags S keep state" logic to keep track
>of connections. A very weird thing happens, though, if I'm connected to C and
>I run /usr/sbin/modinfo on B, specifically: the instant that modinfo is
>executed on B, traffic flowing from A to C having to do with my established SSH
>connection is dropped by IPFilter. The same thing happens for other
>established/in-flight sessions (i.e. HTTPS connections using Keepalive, etc.).
>Casper or Darren (or anyone else), do you have any suggestions as to what may
>be causing this issue? Is it something resolved in later releases of IPF or
>Solaris? I searched Sun's online databases for Solaris patches pertinent to
>modinfo but couldn't find anything that looked like it was germane.
Well, I just witnessed the exact same happening when logged in to home.
I suppose it has something to do with:
int _info(modinfop)
struct modinfo *modinfop;
{
int ipfinst;
ipfinst = mod_info(&modlink1, modinfop);
#ifdef IPFDEBUG
if (ipf_debug)
cmn_err(CE_NOTE, "IP Filter: _info(%x) = %x",
modinfop, ipfinst);
#endif
if (fr_running > 0)
ipfsync();
return ipfinst;
}
Perhaps you can remove the ipfsync() code and see if that fixes your
problem?
Darren can possibly comment on what the code does and what may cause the
state information to be lost?
Casper