diff --git a/client.cpp b/client.cpp index c92bf63..9399ef9 100644 --- a/client.cpp +++ b/client.cpp @@ -165,8 +165,6 @@ int client_on_timer(conn_info_t &conn_info) //for client. called when a timer is send_info.src_port = source_port; } - - if (raw_mode == mode_icmp) { send_info.dst_port = send_info.src_port; @@ -185,7 +183,6 @@ int client_on_timer(conn_info_t &conn_info) //for client. called when a timer is { if(use_tcp_dummy_socket) { - setnonblocking(bind_fd); int ret=connect(bind_fd,(struct sockaddr *)&remote_addr.inner,remote_addr.get_len()); mylog(log_info,"ret=%d,errno=%s,%d %s\n",ret,get_sock_error(),bind_fd,remote_addr.get_str()); @@ -398,6 +395,8 @@ int client_on_raw_recv(conn_info_t &conn_info) //called when raw fd received a p raw_info_t &raw_info=conn_info.raw_info; mylog(log_trace,"\n",send_info.ts_ack); + //if(pre_recv_raw_packet()<0) return -1; + //no pre_recv_raw_packet() in mp version if(conn_info.state.client_current_state==client_idle ) { @@ -609,8 +608,6 @@ int client_on_udp_recv(conn_info_t &conn_info) { mylog(log_warn,"huge packet,data len=%d (>=%d).strongly suggested to set a smaller mtu at upper level,to get rid of this warn\n ",recv_len,mtu_warn); } - //mylog(log_trace,"Received packet from %s:%d,len: %d\n", inet_ntoa(udp_new_addr_in.sin_addr), - //ntohs(udp_new_addr_in.sin_port),recv_len); address_t tmp_addr; tmp_addr.from_sockaddr((sockaddr *)&udp_new_addr_in,udp_new_addr_len); @@ -625,7 +622,6 @@ int client_on_udp_recv(conn_info_t &conn_info) } conv=conn_info.blob->conv_manager.c.get_new_conv(); conn_info.blob->conv_manager.c.insert_conv(conv,tmp_addr); - //mylog(log_info,"new packet from %s:%d,conv_id=%x\n",inet_ntoa(udp_new_addr_in.sin_addr),ntohs(udp_new_addr_in.sin_port),conv); mylog(log_info,"new packet from %s,conv_id=%x\n",tmp_addr.get_str(),conv); } else @@ -646,7 +642,6 @@ void udp_accept_cb(struct ev_loop *loop, struct ev_io *watcher, int revents) conn_info_t & conn_info= *((conn_info_t*)watcher->data); client_on_udp_recv(conn_info); } - void raw_recv_cb(struct ev_loop *loop, struct ev_io *watcher, int revents) { assert(0==1); @@ -712,7 +707,6 @@ void clear_timer_cb(struct ev_loop *loop, struct ev_timer *watcher, int revents) conn_info_t & conn_info= *((conn_info_t*)watcher->data); client_on_timer(conn_info); } - void fifo_cb(struct ev_loop *loop, struct ev_io *watcher, int revents) { conn_info_t & conn_info= *((conn_info_t*)watcher->data); @@ -742,7 +736,6 @@ void fifo_cb(struct ev_loop *loop, struct ev_io *watcher, int revents) } } - int client_event_loop() { char buf[buf_len]; @@ -930,7 +923,6 @@ int client_event_loop() } setnonblocking(udp_fd); - //epollfd = epoll_create1(0); //const int max_events = 4096; diff --git a/common.cpp b/common.cpp index 5feb2c4..608b515 100644 --- a/common.cpp +++ b/common.cpp @@ -319,7 +319,6 @@ int my_ip_t::from_address_t(address_t tmp_addr) } return 0; } - /* int my_ip_t::from_str(char * str) { @@ -459,7 +458,6 @@ char * my_ntoa(u32_t ip) a.s_addr=ip; return inet_ntoa(a); } - /* void init_random_number_fd() { @@ -553,7 +551,6 @@ u64_t get_true_random_number_64() if(size!=sizeof(ret)) { mylog(log_fatal,"get random number failed %d\n",size); - myexit(-1); } return ret; @@ -648,8 +645,6 @@ u64_t read_u64(char * s) return 0; } - - void setnonblocking(int sock) { #if !defined(__MINGW32__) int opts; @@ -769,7 +764,6 @@ int set_buf_size(int fd,int socket_buf_size) myexit(1); } } - return 0; } @@ -981,7 +975,6 @@ int read_file(const char * file,string &output) } return 0; } - int run_command(string command0,char * &output,int flag) { mylog(log_fatal,"run_command not supported in this version\n"); myexit(-1); diff --git a/main.cpp b/main.cpp index f16eb52..fcf38c3 100755 --- a/main.cpp +++ b/main.cpp @@ -92,6 +92,8 @@ int main(int argc, char *argv[]) my_init_keys(key_string,program_mode==client_mode?1:0); iptables_rule(); + //init_raw_socket(); + //init_raw_socket() has to be done after dev dectection in mp version if(program_mode==client_mode) { diff --git a/misc.cpp b/misc.cpp index c667f07..68d6aeb 100644 --- a/misc.cpp +++ b/misc.cpp @@ -29,12 +29,10 @@ int ttl_value=64; fd_manager_t fd_manager; -//char remote_address[max_addr_len]=""; //char remote_address[max_address_len]=""; //char local_ip[100]="0.0.0.0", remote_ip[100]="255.255.255.255",source_ip[100]="0.0.0.0";//local_ip is for -l option,remote_ip for -r option,source for --source-ip //u32_t local_ip_uint32,remote_ip_uint32,source_ip_uint32;//convert from last line. //int local_port = -1, remote_port=-1,source_port=0;//similiar to local_ip remote_ip,buf for port.source_port=0 indicates --source-port is not enabled - address_t local_addr,remote_addr,source_addr; my_ip_t bind_addr; @@ -578,6 +576,7 @@ void process_arg(int argc, char *argv[]) //process all options if(i==cipher_end) { + mylog(log_fatal,"no such cipher_mode %s\n",optarg); myexit(-1); } } @@ -784,30 +783,6 @@ void process_arg(int argc, char *argv[]) //process all options print_help(); myexit(-1); } - - //if(lower_level) - //process_lower_level_arg(); -/* - mylog(log_info,"important variables: "); - - log_bare(log_info,"log_level=%d:%s ",log_level,log_text[log_level]); - log_bare(log_info,"raw_mode=%s ",raw_mode_tostring[raw_mode]); - log_bare(log_info,"cipher_mode=%s ",cipher_mode_tostring[cipher_mode]); - log_bare(log_info,"auth_mode=%s ",auth_mode_tostring[auth_mode]); - - log_bare(log_info,"key=%s ",key_string); - - log_bare(log_info,"local_ip=%s ",local_ip); - log_bare(log_info,"local_port=%d ",local_port); - log_bare(log_info,"remote_address=%s ",remote_address); - log_bare(log_info,"remote_port=%d ",remote_port); - log_bare(log_info,"source_ip=%s ",source_ip); - log_bare(log_info,"source_port=%d ",source_port); - - log_bare(log_info,"socket_buf_size=%d ",socket_buf_size); - - log_bare(log_info,"\n"); - */ if(program_mode==client_mode) { raw_ip_version=remote_addr.get_type(); diff --git a/network.cpp b/network.cpp index 23e7a2f..ee68990 100644 --- a/network.cpp +++ b/network.cpp @@ -1353,10 +1353,8 @@ int pre_recv_raw_packet() /* assert(g_packet_buf_cnt==0); - g_sockaddr_len=sizeof(g_sockaddr.ll); g_packet_buf_len = recvfrom(raw_recv_fd, g_packet_buf, max_data_len+1, 0 ,(sockaddr*)&g_sockaddr , &g_sockaddr_len); - //assert(g_sockaddr_len==sizeof(g_sockaddr.ll)); //g_sockaddr_len=18, sizeof(g_sockaddr.ll)=20, why its not equal? maybe its bc sll_halen is 6? //assert(g_addr_ll_size==sizeof(g_addr_ll));