mirror of
https://github.com/ntop/n2n.git
synced 2024-09-19 16:41:11 +02:00
Minor code cleanup
This commit is contained in:
parent
1daf46275e
commit
41401a131f
36
edge.c
36
edge.c
|
@ -549,7 +549,7 @@ static void send_register(n2n_edge_t * eee,
|
||||||
{
|
{
|
||||||
uint8_t pktbuf[N2N_PKT_BUF_SIZE];
|
uint8_t pktbuf[N2N_PKT_BUF_SIZE];
|
||||||
size_t idx;
|
size_t idx;
|
||||||
ssize_t sent;
|
/* ssize_t sent; */
|
||||||
n2n_common_t cmn;
|
n2n_common_t cmn;
|
||||||
n2n_REGISTER_t reg;
|
n2n_REGISTER_t reg;
|
||||||
n2n_sock_str_t sockbuf;
|
n2n_sock_str_t sockbuf;
|
||||||
|
@ -572,19 +572,16 @@ static void send_register(n2n_edge_t * eee,
|
||||||
traceEvent(TRACE_INFO, "send REGISTER %s",
|
traceEvent(TRACE_INFO, "send REGISTER %s",
|
||||||
sock_to_cstr(sockbuf, remote_peer));
|
sock_to_cstr(sockbuf, remote_peer));
|
||||||
|
|
||||||
|
/* sent = */ sendto_sock(eee->udp_sock, pktbuf, idx, remote_peer);
|
||||||
sent = sendto_sock(eee->udp_sock, pktbuf, idx, remote_peer);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/** Send a REGISTER_SUPER packet to the current supernode. */
|
/** Send a REGISTER_SUPER packet to the current supernode. */
|
||||||
static void send_register_super(n2n_edge_t * eee,
|
static void send_register_super(n2n_edge_t * eee,
|
||||||
const n2n_sock_t * supernode)
|
const n2n_sock_t * supernode) {
|
||||||
{
|
|
||||||
uint8_t pktbuf[N2N_PKT_BUF_SIZE];
|
uint8_t pktbuf[N2N_PKT_BUF_SIZE];
|
||||||
size_t idx;
|
size_t idx;
|
||||||
ssize_t sent;
|
/* ssize_t sent; */
|
||||||
n2n_common_t cmn;
|
n2n_common_t cmn;
|
||||||
n2n_REGISTER_SUPER_t reg;
|
n2n_REGISTER_SUPER_t reg;
|
||||||
n2n_sock_str_t sockbuf;
|
n2n_sock_str_t sockbuf;
|
||||||
|
@ -614,19 +611,17 @@ static void send_register_super(n2n_edge_t * eee,
|
||||||
sock_to_cstr(sockbuf, supernode));
|
sock_to_cstr(sockbuf, supernode));
|
||||||
|
|
||||||
|
|
||||||
sent = sendto_sock(eee->udp_sock, pktbuf, idx, supernode);
|
/* sent = */ sendto_sock(eee->udp_sock, pktbuf, idx, supernode);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/** Send a REGISTER_ACK packet to a peer edge. */
|
/** Send a REGISTER_ACK packet to a peer edge. */
|
||||||
static void send_register_ack(n2n_edge_t * eee,
|
static void send_register_ack(n2n_edge_t * eee,
|
||||||
const n2n_sock_t * remote_peer,
|
const n2n_sock_t * remote_peer,
|
||||||
const n2n_REGISTER_t * reg)
|
const n2n_REGISTER_t * reg) {
|
||||||
{
|
|
||||||
uint8_t pktbuf[N2N_PKT_BUF_SIZE];
|
uint8_t pktbuf[N2N_PKT_BUF_SIZE];
|
||||||
size_t idx;
|
size_t idx;
|
||||||
ssize_t sent;
|
/* ssize_t sent; */
|
||||||
n2n_common_t cmn;
|
n2n_common_t cmn;
|
||||||
n2n_REGISTER_ACK_t ack;
|
n2n_REGISTER_ACK_t ack;
|
||||||
n2n_sock_str_t sockbuf;
|
n2n_sock_str_t sockbuf;
|
||||||
|
@ -650,7 +645,7 @@ static void send_register_ack(n2n_edge_t * eee,
|
||||||
sock_to_cstr(sockbuf, remote_peer));
|
sock_to_cstr(sockbuf, remote_peer));
|
||||||
|
|
||||||
|
|
||||||
sent = sendto_sock(eee->udp_sock, pktbuf, idx, remote_peer);
|
/* sent = */ sendto_sock(eee->udp_sock, pktbuf, idx, remote_peer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1128,7 +1123,7 @@ static int send_PACKET(n2n_edge_t * eee,
|
||||||
size_t pktlen)
|
size_t pktlen)
|
||||||
{
|
{
|
||||||
int dest;
|
int dest;
|
||||||
ssize_t s;
|
/*ssize_t s; */
|
||||||
n2n_sock_str_t sockbuf;
|
n2n_sock_str_t sockbuf;
|
||||||
n2n_sock_t destination;
|
n2n_sock_t destination;
|
||||||
|
|
||||||
|
@ -1137,17 +1132,13 @@ static int send_PACKET(n2n_edge_t * eee,
|
||||||
dest = find_peer_destination(eee, dstMac, &destination);
|
dest = find_peer_destination(eee, dstMac, &destination);
|
||||||
|
|
||||||
if(dest)
|
if(dest)
|
||||||
{
|
|
||||||
++(eee->tx_p2p);
|
++(eee->tx_p2p);
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
++(eee->tx_sup);
|
++(eee->tx_sup);
|
||||||
}
|
|
||||||
|
|
||||||
traceEvent(TRACE_INFO, "send_PACKET to %s", sock_to_cstr(sockbuf, &destination));
|
traceEvent(TRACE_INFO, "send_PACKET to %s", sock_to_cstr(sockbuf, &destination));
|
||||||
|
|
||||||
s = sendto_sock(eee->udp_sock, pktbuf, pktlen, &destination);
|
/* s = */ sendto_sock(eee->udp_sock, pktbuf, pktlen, &destination);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1414,7 +1405,7 @@ static void readFromMgmtSocket(n2n_edge_t * eee, int * keep_running)
|
||||||
{
|
{
|
||||||
uint8_t udp_buf[N2N_PKT_BUF_SIZE]; /* Compete UDP packet */
|
uint8_t udp_buf[N2N_PKT_BUF_SIZE]; /* Compete UDP packet */
|
||||||
ssize_t recvlen;
|
ssize_t recvlen;
|
||||||
ssize_t sendlen;
|
/* ssize_t sendlen; */
|
||||||
struct sockaddr_in sender_sock;
|
struct sockaddr_in sender_sock;
|
||||||
socklen_t i;
|
socklen_t i;
|
||||||
size_t msg_len;
|
size_t msg_len;
|
||||||
|
@ -1563,9 +1554,8 @@ static void readFromMgmtSocket(n2n_edge_t * eee, int * keep_running)
|
||||||
traceEvent(TRACE_DEBUG, "mgmt status sending: %s", udp_buf);
|
traceEvent(TRACE_DEBUG, "mgmt status sending: %s", udp_buf);
|
||||||
|
|
||||||
|
|
||||||
sendlen = sendto(eee->udp_mgmt_sock, udp_buf, msg_len, 0/*flags*/,
|
/* sendlen = */ sendto(eee->udp_mgmt_sock, udp_buf, msg_len, 0/*flags*/,
|
||||||
(struct sockaddr *)&sender_sock, sizeof(struct sockaddr_in));
|
(struct sockaddr *)&sender_sock, sizeof(struct sockaddr_in));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1920,7 +1910,7 @@ static int run_loop(n2n_edge_t * eee);
|
||||||
|
|
||||||
/* *************************************************** */
|
/* *************************************************** */
|
||||||
|
|
||||||
void daemonize() {
|
static void daemonize() {
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
int childpid;
|
int childpid;
|
||||||
|
|
||||||
|
|
34
n2n.c
34
n2n.c
|
@ -406,23 +406,18 @@ extern int str2mac(uint8_t * outmac /* 6 bytes */, const char * s )
|
||||||
}
|
}
|
||||||
|
|
||||||
extern char * sock_to_cstr(n2n_sock_str_t out,
|
extern char * sock_to_cstr(n2n_sock_str_t out,
|
||||||
const n2n_sock_t * sock )
|
const n2n_sock_t * sock) {
|
||||||
{
|
|
||||||
int r;
|
|
||||||
|
|
||||||
if(NULL == out) { return NULL; }
|
if(NULL == out) { return NULL; }
|
||||||
memset(out, 0, N2N_SOCKBUF_SIZE);
|
memset(out, 0, N2N_SOCKBUF_SIZE);
|
||||||
|
|
||||||
if(AF_INET6 == sock->family )
|
if(AF_INET6 == sock->family) {
|
||||||
{
|
|
||||||
/* INET6 not written yet */
|
/* INET6 not written yet */
|
||||||
r = snprintf(out, N2N_SOCKBUF_SIZE, "XXXX:%hu", sock->port );
|
snprintf(out, N2N_SOCKBUF_SIZE, "XXXX:%hu", sock->port);
|
||||||
return out;
|
return out;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
const uint8_t * a = sock->addr.v4;
|
const uint8_t * a = sock->addr.v4;
|
||||||
r = snprintf(out, N2N_SOCKBUF_SIZE, "%hu.%hu.%hu.%hu:%hu",
|
|
||||||
|
snprintf(out, N2N_SOCKBUF_SIZE, "%hu.%hu.%hu.%hu:%hu",
|
||||||
(unsigned short)(a[0] & 0xff),
|
(unsigned short)(a[0] & 0xff),
|
||||||
(unsigned short)(a[1] & 0xff),
|
(unsigned short)(a[1] & 0xff),
|
||||||
(unsigned short)(a[2] & 0xff),
|
(unsigned short)(a[2] & 0xff),
|
||||||
|
@ -434,17 +429,22 @@ extern char * sock_to_cstr(n2n_sock_str_t out,
|
||||||
|
|
||||||
/* @return zero if the two sockets are equivalent. */
|
/* @return zero if the two sockets are equivalent. */
|
||||||
int sock_equal(const n2n_sock_t * a,
|
int sock_equal(const n2n_sock_t * a,
|
||||||
const n2n_sock_t * b )
|
const n2n_sock_t * b) {
|
||||||
{
|
|
||||||
if(a->port != b->port) { return 1; }
|
if(a->port != b->port) { return 1; }
|
||||||
if(a->family != b->family) { return 1; }
|
if(a->family != b->family) { return 1; }
|
||||||
switch(a->family) /* they are the same */
|
|
||||||
{
|
switch(a->family) {
|
||||||
case AF_INET:
|
case AF_INET:
|
||||||
if(0 != memcmp(a->addr.v4, b->addr.v4, IPV4_SIZE ) ) { return 1;};
|
if(0 != memcmp(a->addr.v4, b->addr.v4, IPV4_SIZE)) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if(0 != memcmp(a->addr.v6, b->addr.v6, IPV6_SIZE ) ) { return 1;};
|
if(0 != memcmp(a->addr.v6, b->addr.v6, IPV6_SIZE)) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,8 @@
|
||||||
|
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
|
|
||||||
|
/* *************************************************** */
|
||||||
|
|
||||||
static void read_mac(char *ifname, n2n_mac_t mac_addr) {
|
static void read_mac(char *ifname, n2n_mac_t mac_addr) {
|
||||||
int _sock, res;
|
int _sock, res;
|
||||||
struct ifreq ifr;
|
struct ifreq ifr;
|
||||||
|
@ -123,22 +125,29 @@ int tuntap_open(tuntap_dev *device,
|
||||||
return(device->fd);
|
return(device->fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* *************************************************** */
|
||||||
|
|
||||||
int tuntap_read(struct tuntap_dev *tuntap, unsigned char *buf, int len) {
|
int tuntap_read(struct tuntap_dev *tuntap, unsigned char *buf, int len) {
|
||||||
return(read(tuntap->fd, buf, len));
|
return(read(tuntap->fd, buf, len));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* *************************************************** */
|
||||||
|
|
||||||
int tuntap_write(struct tuntap_dev *tuntap, unsigned char *buf, int len) {
|
int tuntap_write(struct tuntap_dev *tuntap, unsigned char *buf, int len) {
|
||||||
return(write(tuntap->fd, buf, len));
|
return(write(tuntap->fd, buf, len));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* *************************************************** */
|
||||||
|
|
||||||
void tuntap_close(struct tuntap_dev *tuntap) {
|
void tuntap_close(struct tuntap_dev *tuntap) {
|
||||||
close(tuntap->fd);
|
close(tuntap->fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* *************************************************** */
|
||||||
|
|
||||||
/* Fill out the ip_addr value from the interface. Called to pick up dynamic
|
/* Fill out the ip_addr value from the interface. Called to pick up dynamic
|
||||||
* address changes. */
|
* address changes. */
|
||||||
void tuntap_get_address(struct tuntap_dev *tuntap)
|
void tuntap_get_address(struct tuntap_dev *tuntap) {
|
||||||
{
|
|
||||||
FILE * fp=NULL;
|
FILE * fp=NULL;
|
||||||
ssize_t nread=0;
|
ssize_t nread=0;
|
||||||
char buf[N2N_LINUX_SYSTEMCMD_SIZE];
|
char buf[N2N_LINUX_SYSTEMCMD_SIZE];
|
||||||
|
@ -148,21 +157,25 @@ void tuntap_get_address(struct tuntap_dev *tuntap)
|
||||||
|
|
||||||
/* If the interface has no address (0.0.0.0) there will be no inet addr
|
/* If the interface has no address (0.0.0.0) there will be no inet addr
|
||||||
* line and the returned string will be empty. */
|
* line and the returned string will be empty. */
|
||||||
snprintf( buf, sizeof(buf), "/sbin/ifconfig %s | /bin/sed -e '/inet addr:/!d' -e 's/^.*inet addr://' -e 's/ .*$//'",
|
snprintf( buf, sizeof(buf),
|
||||||
|
"/sbin/ifconfig %s | /bin/sed -e '/inet addr:/!d' -e 's/^.*inet addr://' -e 's/ .*$//'",
|
||||||
tuntap->dev_name);
|
tuntap->dev_name);
|
||||||
fp = popen(buf, "r");
|
fp = popen(buf, "r");
|
||||||
if (fp )
|
|
||||||
{
|
if (fp) {
|
||||||
memset(buf, 0, N2N_LINUX_SYSTEMCMD_SIZE); /* make sure buf is NULL terminated. */
|
memset(buf, 0, N2N_LINUX_SYSTEMCMD_SIZE); /* make sure buf is NULL terminated. */
|
||||||
nread=fread(buf, 1, 15, fp);
|
nread = fread(buf, N2N_LINUX_SYSTEMCMD_SIZE-1, 1, fp);
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
fp = NULL;
|
fp = NULL;
|
||||||
|
|
||||||
traceEvent(TRACE_INFO, "ifconfig address = %s", buf);
|
traceEvent(TRACE_INFO, "ifconfig address = %s", buf);
|
||||||
|
|
||||||
|
if(nread > 0) {
|
||||||
|
buf[nread] = '\0';
|
||||||
tuntap->ip_addr = inet_addr(buf);
|
tuntap->ip_addr = inet_addr(buf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#endif /* #ifdef __linux__ */
|
#endif /* #ifdef __linux__ */
|
||||||
|
|
Loading…
Reference in New Issue
Block a user