TODO: can log_file be written to? add systemd unit? remove magic numbers make log output user adjustable add gmiaccess stuff add cgi stuff better magic detection check if loaded cert/keys are actually valid check values for keys in config file handle signals like interrupt better recently-accepted-cert-cache for specific cert-req keys, doing a look up EACH and EVERY TIME can be expensive when it it likely that a single person will be looking around. reduce complexity in cert_req() permission denied when the file is readable (MAC permissions) use GetOpt::Long in a reasonable manner map_server_alias() perhaps should not exist. In general, I am unsatisfied with the program keeping the configuration file in memory and constantly referring to it. map_server_alias() literally just copies it's vhost's config and keeps it in the config hash. reduce complexity in listen_config()