static int pack_gestion(char c, int sockfd) { if (c == RS) { ft_recv_file(sockfd); return (1); } if (c == RFD) { delete_mission(sockfd); return (1); } if (c == ACP) { start_mission(sockfd); return (1); } return (0); }
void acceuil(t_server *server, int pid) { char cmd; char *user;//[user] char *buffer; int nb_dir; printf("acceuil\n"); ft_accept(server); server->connection++; printf("connected\n"); user = ft_fd_in_str(server->sock);//[user] ft_putendl(user);//[user] /* if (!(server->pid = fork())) {*/ printf("fils\n"); // if (!(user = getenv("USER="******"cmd = :%c:\n", cmd); if (cmd == 'd' || cmd == 'f') { nb_dir = 0; if (cmd == 'd') nb_dir = nb_dir_sock(server->sock); ft_recv_file(server->sock, nb_dir); } else if (cmd == 'c' || cmd == 'x') { buffer = ft_fd_in_str(server->sock);//reception de la string sur la socket printf("serv buffer = :%s:\n", buffer); servcom(cmd, user, buffer, pid);//envoie du buffer au shell via pipe [user] } else printf("no mode %c bad argument\n", cmd); ft_putstr("server : mort du processus fils\n"); close(server->sock); exit(0); /* }*/ }