server_init.c
Aller à la documentation de ce fichier.00001 #include "config.h"
00002 #include "global.h"
00003 #include "lwip/tcp.h"
00004
00005 #ifdef SERVER
00006
00007 static const int server_close = SERVER_CLOSE;
00008
00009 int server_init(short int port)
00010 {
00011 struct tcp_pcb *pcb = NULL;
00012 err_t ret_code = ERR_OK;
00013
00014 pcb = tcp_new();
00015 if(NULL == pcb) {
00016 print("tcp_new(): echec.\n\r");
00017 return -1;
00018 }
00019
00020 tcp_arg(pcb, (void *)&server_close);
00021 tcp_err(pcb, server_err);
00022
00023 ret_code = tcp_bind(pcb, NULL, port);
00024 if(ERR_OK != ret_code) {
00025 print("tcp_bind(): echec.\n\r");
00026 return -1;
00027 }
00028
00029 pcb = tcp_listen(pcb);
00030 if(NULL == pcb) {
00031 print("tcp_listen(): echec.\n\r");
00032 return -1;
00033 }
00034
00035 tcp_accept(pcb, server_accept);
00036
00037 return 0;
00038 }
00039
00040 #endif //SERVER