문제

In a TIdHTTPServer component, I'd like to enable a blacklist of IP addresses to block. I'd like to make sure this is on the lowest level possible to prevent any unnecessary data streaming in from a blacklisted client. How should I intercept this server component to block an IP on the lowest level possible? This applies to both IP v4 and v6

도움이 되었습니까?

해결책

On Indy 9, there was an event for refusing a connection before it was actually accepted. On Indy 10, it's still not implemented.

If you look at IdCustomTCPServer.pas, in procedure TIdListenerThread.Run there is a comment in there about exposing an event to the user to let them decide whether the connection should be accepted.

I would modify the source and implement it there.

If that's not for you, then you can disconnect them in the OnConnect event.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top