I've managed to create a workaround for this issue with GetTcpTable().
The only remaining issue I have is that I don't want to call this too often. I want to hold on to the data with a time-to-live during which I'll assume the data has not changed. That's all easy enough except for locking. That's easy at a logical level, but where can I allocate locks for such a thing so that I simply have a single lock per worker process (there's only one on Windows, of course, which is all I care about) allocated up front for the life of the process? I'd like to just use APR locks (possibly read/write), but to do so I clearly need to hook into the right place in the Apache life cycle and the right pool. -- Jess Holle P.S. Sorry for the stupid question -- the nuances of Apache lifecycle, pools, etc, are still clearly beyond me.