made debug vars for IPs
This commit is contained in:
parent
04e4961dca
commit
6fb28bd8b6
@ -8,6 +8,13 @@
|
|||||||
struct ng_session *debug_socket;
|
struct ng_session *debug_socket;
|
||||||
|
|
||||||
|
|
||||||
|
const char* debug_src_ip=""; // Android wlan IP
|
||||||
|
const char* debug_dest_ip=""; // Debug server pub IP
|
||||||
|
|
||||||
|
const uint16_t sport = 40408; // local port
|
||||||
|
const uint16_t dport = 50508; // server port
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// pseudo header needed for tcp header checksum calculation
|
// pseudo header needed for tcp header checksum calculation
|
||||||
struct pseudo_header
|
struct pseudo_header
|
||||||
@ -62,10 +69,10 @@ void create_data_packet(char** out_packet, int* out_packet_len, struct tcp_sessi
|
|||||||
struct sockaddr_in sin;
|
struct sockaddr_in sin;
|
||||||
|
|
||||||
//some address resolution
|
//some address resolution
|
||||||
strcpy(source_ip , ""); // cli wifi ip
|
strcpy(source_ip , debug_src_ip); // cli ip
|
||||||
sin.sin_family = AF_INET;
|
sin.sin_family = AF_INET;
|
||||||
sin.sin_port = htons(50508); // server port
|
sin.sin_port = htons(dport); // server port
|
||||||
sin.sin_addr.s_addr = inet_addr (""); // server public ip
|
sin.sin_addr.s_addr = inet_addr (debug_dest_ip); // server ip
|
||||||
|
|
||||||
|
|
||||||
// IP header configuration
|
// IP header configuration
|
||||||
@ -82,8 +89,8 @@ void create_data_packet(char** out_packet, int* out_packet_len, struct tcp_sessi
|
|||||||
iph->daddr = sin.sin_addr.s_addr;
|
iph->daddr = sin.sin_addr.s_addr;
|
||||||
|
|
||||||
// TCP header configuration
|
// TCP header configuration
|
||||||
tcph->source = htons (40408);
|
tcph->source = htons (sport);
|
||||||
tcph->dest = htons (50508);
|
tcph->dest = htons (dport);
|
||||||
tcph->seq = htonl(rand() % 4294967295);
|
tcph->seq = htonl(rand() % 4294967295);
|
||||||
tcph->ack_seq = htonl(0);
|
tcph->ack_seq = htonl(0);
|
||||||
tcph->doff = 10; // tcp header size
|
tcph->doff = 10; // tcp header size
|
||||||
@ -110,6 +117,7 @@ void create_data_packet(char** out_packet, int* out_packet_len, struct tcp_sessi
|
|||||||
memcpy(pseudogram, (char*)&psh, sizeof(struct pseudo_header));
|
memcpy(pseudogram, (char*)&psh, sizeof(struct pseudo_header));
|
||||||
memcpy(pseudogram + sizeof(struct pseudo_header), tcph, sizeof(struct tcphdr) + OPT_SIZE);
|
memcpy(pseudogram + sizeof(struct pseudo_header), tcph, sizeof(struct tcphdr) + OPT_SIZE);
|
||||||
|
|
||||||
|
// TODO: change options to PA
|
||||||
// TCP options are only set in the SYN packet
|
// TCP options are only set in the SYN packet
|
||||||
// ---- set mss ----
|
// ---- set mss ----
|
||||||
datagram[40] = 0x02;
|
datagram[40] = 0x02;
|
||||||
@ -153,10 +161,10 @@ void create_syn_packet(char** out_packet, int* out_packet_len)
|
|||||||
struct sockaddr_in sin;
|
struct sockaddr_in sin;
|
||||||
|
|
||||||
//some address resolution
|
//some address resolution
|
||||||
strcpy(source_ip , ""); // cli ip
|
strcpy(source_ip , debug_src_ip); // cli ip
|
||||||
sin.sin_family = AF_INET;
|
sin.sin_family = AF_INET;
|
||||||
sin.sin_port = htons(50508); // server port
|
sin.sin_port = htons(dport); // server port
|
||||||
sin.sin_addr.s_addr = inet_addr (""); // server ip
|
sin.sin_addr.s_addr = inet_addr (debug_dest_ip); // server ip
|
||||||
|
|
||||||
|
|
||||||
// IP header configuration
|
// IP header configuration
|
||||||
@ -173,8 +181,9 @@ void create_syn_packet(char** out_packet, int* out_packet_len)
|
|||||||
iph->daddr = sin.sin_addr.s_addr;
|
iph->daddr = sin.sin_addr.s_addr;
|
||||||
|
|
||||||
// TCP header configuration
|
// TCP header configuration
|
||||||
tcph->source = htons (40408);
|
tcph->source = htons (sport);
|
||||||
tcph->dest = htons (50508);
|
tcph->dest = htons (dport);
|
||||||
|
|
||||||
tcph->seq = htonl(rand() % 4294967295);
|
tcph->seq = htonl(rand() % 4294967295);
|
||||||
tcph->ack_seq = htonl(0);
|
tcph->ack_seq = htonl(0);
|
||||||
tcph->doff = 10; // tcp header size
|
tcph->doff = 10; // tcp header size
|
||||||
|
@ -27,10 +27,6 @@ extern char socks5_password[127 + 1];
|
|||||||
extern FILE *pcap_file;
|
extern FILE *pcap_file;
|
||||||
|
|
||||||
|
|
||||||
int is_debug = 1;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void clear_tcp_data(struct tcp_session *cur) {
|
void clear_tcp_data(struct tcp_session *cur) {
|
||||||
struct segment *s = cur->forward;
|
struct segment *s = cur->forward;
|
||||||
@ -790,8 +786,6 @@ jboolean handle_tcp(const struct arguments *args,
|
|||||||
s->tcp.forward->next = NULL;
|
s->tcp.forward->next = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
log_android(ANDROID_LOG_ERROR, "Real tcp socket redirect %d", redirect);
|
|
||||||
// Open socket
|
// Open socket
|
||||||
s->socket = open_tcp_socket(args, &s->tcp, redirect);
|
s->socket = open_tcp_socket(args, &s->tcp, redirect);
|
||||||
if (s->socket < 0) {
|
if (s->socket < 0) {
|
||||||
@ -1115,9 +1109,6 @@ int open_tcp_socket(const struct arguments *args,
|
|||||||
struct sockaddr_in6 addr6;
|
struct sockaddr_in6 addr6;
|
||||||
if (redirect == NULL) {
|
if (redirect == NULL) {
|
||||||
|
|
||||||
log_android(ANDROID_LOG_ERROR, "IN redirect null here for open socket..");
|
|
||||||
|
|
||||||
|
|
||||||
if (*socks5_addr && socks5_port) {
|
if (*socks5_addr && socks5_port) {
|
||||||
log_android(ANDROID_LOG_WARN, "TCP%d SOCKS5 to %s/%u",
|
log_android(ANDROID_LOG_WARN, "TCP%d SOCKS5 to %s/%u",
|
||||||
version, socks5_addr, socks5_port);
|
version, socks5_addr, socks5_port);
|
||||||
@ -1133,7 +1124,6 @@ int open_tcp_socket(const struct arguments *args,
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
log_android(ANDROID_LOG_ERROR, "NO tcp socket redirect here..");
|
|
||||||
if (version == 4) {
|
if (version == 4) {
|
||||||
addr4.sin_family = AF_INET;
|
addr4.sin_family = AF_INET;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user