From d3e67b912a97834dbf0711b5d3dbbc0bd3d29ee8 Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@0f7e0d06-a6f9-0310-a55f-d5f984f55e4c> Date: Thu, 10 Feb 2005 23:10:51 +0000 Subject: This commit was manufactured by cvs2svn to create branch 'hugues'. git-svn-id: file:///usr/local/opt/svn/repos/glagen@4 0f7e0d06-a6f9-0310-a55f-d5f984f55e4c --- .../glagen/algo_distribue/network/main_server.cc | 73 ++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 branches/hugues/glagen/algo_distribue/network/main_server.cc (limited to 'branches/hugues/glagen/algo_distribue/network/main_server.cc') diff --git a/branches/hugues/glagen/algo_distribue/network/main_server.cc b/branches/hugues/glagen/algo_distribue/network/main_server.cc new file mode 100644 index 0000000..4fafd09 --- /dev/null +++ b/branches/hugues/glagen/algo_distribue/network/main_server.cc @@ -0,0 +1,73 @@ +// Main du reseau server + +#include +#include "Server.hh" +#include "data/Data_exemple.hh" +#include "data/Data_string.hh" + +char gl_handle; + +void help(char *prog_name) +{ + std::cout << prog_name << " [port]" << std::endl; + exit(0); +} + +void signal_alarm(int) +{ + gl_handle = gl_handle | 1; +} + +void check_args(int argc, char *argv1, char *argv2) +{ + int current; + + if (argc != 2) + { + std::cerr << "Error server : Error parameters" << std::endl; + help(argv1); + } + for (current = 0; argv2[current] != '\0'; current++) + if (argv2[current] < '0' || argv2[current] > '9') + { + std::cerr << "Error server : Error parameters" << std::endl; + help(argv1); + } +} + +int main(int argc, char* argv[]) +{ +// int fd_client; +// socklen_t len; +// struct sockaddr_in sock_client; + +// len = sizeof (struct sockaddr_in); + check_args(argc, argv[0], argv[1]); + Server server(atoi(argv[1]), 3); + server.get_list_fd(); +// server.start_signal(); +// while (gl_handle != -1) +// { +// fd_client = 0; +// if ((fd_client = accept(server.get_fd(), +// (struct sockaddr *)&(sock_client), &len)) > 0) +// gl_handle = gl_handle | 2; +// std::list list_fd; +// if (2 == (gl_handle & 2)) +// { +// server.accept_client(fd_client); +// server.send_signal(fd_client); +// } +// Data data; +// server.wait_signal(list_fd); +// server.received_data(data, list_fd); + +// Data data_string; +// Data_string ack("Aknowledge"); +// data_string.add_data(ack); +// server.send_data(data_string, list_fd); + +// gl_handle = 0; +// } +// return (0); +} -- cgit v1.2.3