mirror of
https://github.com/wangyu-/udp2raw.git
synced 2025-01-19 14:29:34 +08:00
new option set-ttl
This commit is contained in:
parent
b0976dbee6
commit
5c7d48e711
9
misc.cpp
9
misc.cpp
@ -24,6 +24,7 @@ int max_rst_allowed=-1;
|
||||
|
||||
int enable_dns_resolve=0;
|
||||
|
||||
int ttl_value=64;
|
||||
|
||||
fd_manager_t fd_manager;
|
||||
|
||||
@ -277,6 +278,7 @@ void process_arg(int argc, char *argv[]) //process all options
|
||||
{"mtu-warn", required_argument, 0, 1},
|
||||
{"max-rst-to-show", required_argument, 0, 1},
|
||||
{"max-rst-allowed", required_argument, 0, 1},
|
||||
{"set-ttl", required_argument, 0, 1},
|
||||
{"dns-resolve", no_argument, 0, 1},
|
||||
{NULL, 0, 0, 0}
|
||||
};
|
||||
@ -650,6 +652,13 @@ void process_arg(int argc, char *argv[]) //process all options
|
||||
assert(max_rst_allowed>=-1);
|
||||
mylog(log_info,"max_rst_allowed=%d \n",max_rst_allowed);
|
||||
}
|
||||
else if(strcmp(long_options[option_index].name,"set-ttl")==0)
|
||||
{
|
||||
sscanf(optarg,"%d",&ttl_value);
|
||||
assert(ttl_value>=0&&ttl_value<=255);
|
||||
mylog(log_info,"ttl_value=%d",ttl_value);
|
||||
}
|
||||
|
||||
else if(strcmp(long_options[option_index].name,"dns-resolve")==0)
|
||||
{
|
||||
enable_dns_resolve=1;
|
||||
|
2
misc.h
2
misc.h
@ -22,6 +22,8 @@ extern int max_rst_to_show;
|
||||
|
||||
extern int enable_dns_resolve;
|
||||
|
||||
extern int ttl_value;
|
||||
|
||||
|
||||
const u32_t max_handshake_conn_num=10000;
|
||||
const u32_t max_ready_conn_num=1000;
|
||||
|
@ -591,7 +591,7 @@ int send_raw_ip(raw_info_t &raw_info,const char * payload,int payloadlen)
|
||||
|
||||
iph->frag_off = htons(0x4000); //DF set,others are zero
|
||||
// iph->frag_off = htons(0x0000); //DF set,others are zero
|
||||
iph->ttl = 64;
|
||||
iph->ttl = (unsigned char)ttl_value;
|
||||
iph->protocol = send_info.protocol;
|
||||
iph->check = 0; //Set to 0 before calculating checksum
|
||||
iph->saddr = send_info.src_ip; //Spoof the source ip address
|
||||
@ -1039,7 +1039,7 @@ int send_raw_tcp_deprecated(const packet_info_t &info,const char * payload,int p
|
||||
|
||||
iph->id = htonl (ip_id++); //Id of this packet
|
||||
iph->frag_off = htons(0x4000); //DF set,others are zero
|
||||
iph->ttl = 64;
|
||||
iph->ttl = (unsigned char)ttl_value;
|
||||
iph->protocol = IPPROTO_TCP;
|
||||
iph->check = 0; //Set to 0 before calculating checksum
|
||||
iph->saddr = info.src_ip; //Spoof the source ip address
|
||||
|
Loading…
x
Reference in New Issue
Block a user