42 lines
712 B
C++
42 lines
712 B
C++
|
|
#include <iostream>
|
|
#include <exception>
|
|
#include <stdexcept>
|
|
#include "Webserv.hpp"
|
|
#include "ConfigParser.hpp"
|
|
|
|
// debug
|
|
family_state g_family;
|
|
sem_t* g_shmem;
|
|
// debug end
|
|
|
|
int main(int ac, char **av)
|
|
{
|
|
// debug
|
|
init_semaphore();
|
|
|
|
std::vector<ServerConfig>* servers_config = NULL;
|
|
try
|
|
{
|
|
std::string config = (ac == 2 ? av[1] : "./default.config");
|
|
|
|
ConfigParser configParser(config);
|
|
// configParser.print_content();
|
|
|
|
servers_config = configParser.parse();
|
|
|
|
Webserv serv;
|
|
serv.init_virtual_servers(servers_config);
|
|
delete servers_config;
|
|
servers_config = NULL;
|
|
serv.run();
|
|
}
|
|
catch (std::exception& e)
|
|
{
|
|
std::cerr << e.what() << '\n';
|
|
delete servers_config;
|
|
}
|
|
|
|
return (0);
|
|
}
|