Optimize suspension/unsuspension for show_all_users.cache

Version 1.45.1

Bugfix
Finished

Upon suspension/unsuspension, the entire show_all_users.cache is recomputed. The reasoning at the time was that if you trigger it on a Reseller, it's quicker just to recompute the info for all accounts. When there are more accounts, say 5000, it will not be very efficient, so the fix will be to optimize which accounts are re-computed, rather than all. Basically, just include all selected accounts, plus any Users they may control, if they are a Reseller or Admin. Secondary bug found where the forked process to rebuild the cache also held the client socket, so the client connection didn't close until the cache was built. Fix was to close the client connection (without ssl disconnect) in the cache fork process.

Try DirectAdmin with a 30-day money back guarantee!