Currently, when a user connects to a hosted server and lacks a mod setup there, he gets a download prompt. If he decides not to download it then he remains connected, and all other players receive a repeated warning saying that this player is missing this mod.
This is not very useful the way it is now: If the user decides not to download the mod then he won't be able to play on this server. So you could argue that clients who deny mod downloads should be disconnected. However, the server admin may decide to take this into account and instead set to a mod this user actually has, so that no download will be necessary.
So I suggest to solve this as follows: the client should check in regular intervals (maybe every 5-10 seconds) whether all the mods needed are available. And, taking into account changes the server admin made, whenever any mods are unavailable on the client, the download prompt should be displayed there (again). So denying a download will then only result in the prompt vanishing until the next mod check unless the server admin has already changes to a mod which the client does have available.