Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9f1b216f authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "net: Indicate whether a socket is a transparent socket"

parents c68617ed f65f7a41
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -2228,6 +2228,7 @@ static void get_tcp4_sock(struct sock *sk, struct seq_file *f, int i)
	__be32 src = inet->inet_rcv_saddr;
	__u16 destp = ntohs(inet->inet_dport);
	__u16 srcp = ntohs(inet->inet_sport);
	__u8 seq_state = sk->sk_state;
	int rx_queue;
	int state;

@@ -2247,6 +2248,9 @@ static void get_tcp4_sock(struct sock *sk, struct seq_file *f, int i)
		timer_expires = jiffies;
	}

	if (inet->transparent)
		seq_state |= 0x80;

	state = sk_state_load(sk);
	if (state == TCP_LISTEN)
		rx_queue = sk->sk_ack_backlog;
@@ -2258,7 +2262,7 @@ static void get_tcp4_sock(struct sock *sk, struct seq_file *f, int i)

	seq_printf(f, "%4d: %08X:%04X %08X:%04X %02X %08X:%08X %02X:%08lX "
			"%08X %5u %8d %lu %d %pK %lu %lu %u %u %d",
		i, src, srcp, dest, destp, state,
		i, src, srcp, dest, destp, seq_state,
		tp->write_seq - tp->snd_una,
		rx_queue,
		timer_active,
+8 −1
Original line number Diff line number Diff line
@@ -2377,14 +2377,21 @@ static void udp4_format_sock(struct sock *sp, struct seq_file *f,
		int bucket)
{
	struct inet_sock *inet = inet_sk(sp);
	struct udp_sock *up = udp_sk(sp);
	__be32 dest = inet->inet_daddr;
	__be32 src  = inet->inet_rcv_saddr;
	__u16 destp	  = ntohs(inet->inet_dport);
	__u16 srcp	  = ntohs(inet->inet_sport);
	__u8 state = sp->sk_state;

	if (up->encap_rcv)
		state |= 0xF0;
	else if (inet->transparent)
		state |= 0x80;

	seq_printf(f, "%5d: %08X:%04X %08X:%04X"
		" %02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d %pK %d",
		bucket, src, srcp, dest, destp, sp->sk_state,
		bucket, src, srcp, dest, destp, state,
		sk_wmem_alloc_get(sp),
		sk_rmem_alloc_get(sp),
		0, 0L, 0,
+6 −1
Original line number Diff line number Diff line
@@ -1008,9 +1008,14 @@ void ip6_dgram_sock_seq_show(struct seq_file *seq, struct sock *sp,
			     __u16 srcp, __u16 destp, int bucket)
{
	const struct in6_addr *dest, *src;
	__u8 state = sp->sk_state;

	dest  = &sp->sk_v6_daddr;
	src   = &sp->sk_v6_rcv_saddr;

	if (inet_sk(sp) && inet_sk(sp)->transparent)
		state |= 0x80;

	seq_printf(seq,
		   "%5d: %08X%08X%08X%08X:%04X %08X%08X%08X%08X:%04X "
		   "%02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d %pK %d\n",
@@ -1019,7 +1024,7 @@ void ip6_dgram_sock_seq_show(struct seq_file *seq, struct sock *sp,
		   src->s6_addr32[2], src->s6_addr32[3], srcp,
		   dest->s6_addr32[0], dest->s6_addr32[1],
		   dest->s6_addr32[2], dest->s6_addr32[3], destp,
		   sp->sk_state,
		   state,
		   sk_wmem_alloc_get(sp),
		   sk_rmem_alloc_get(sp),
		   0, 0L, 0,
+5 −1
Original line number Diff line number Diff line
@@ -1741,6 +1741,7 @@ static void get_tcp6_sock(struct seq_file *seq, struct sock *sp, int i)
	const struct fastopen_queue *fastopenq = &icsk->icsk_accept_queue.fastopenq;
	int rx_queue;
	int state;
	__u8 state_seq = sp->sk_state;

	dest  = &sp->sk_v6_daddr;
	src   = &sp->sk_v6_rcv_saddr;
@@ -1772,6 +1773,9 @@ static void get_tcp6_sock(struct seq_file *seq, struct sock *sp, int i)
		 */
		rx_queue = max_t(int, tp->rcv_nxt - tp->copied_seq, 0);

	if (inet->transparent)
		state_seq |= 0x80;

	seq_printf(seq,
		   "%4d: %08X%08X%08X%08X:%04X %08X%08X%08X%08X:%04X "
		   "%02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d %pK %lu %lu %u %u %d\n",
@@ -1780,7 +1784,7 @@ static void get_tcp6_sock(struct seq_file *seq, struct sock *sp, int i)
		   src->s6_addr32[2], src->s6_addr32[3], srcp,
		   dest->s6_addr32[0], dest->s6_addr32[1],
		   dest->s6_addr32[2], dest->s6_addr32[3], destp,
		   state,
		   state_seq,
		   tp->write_seq - tp->snd_una,
		   rx_queue,
		   timer_active,