The Linux Channel

Videos :: Linux Kernel struct tcphdr data-structure

Written by: Kiran Kankipati - Published: 05-Jul-2016

(API) Watch Video: Linux Kernel struct tcphdr data-structure - part2 - Sample Example Code
Linux Kernel struct tcphdr data-structure - part2 - Sample Example Code
* Click the image to watch this video on Youtube ↗

Refer: Kernel Doc printk-formats.txt - http://elixir.free-electrons.com/linux/latest/source/Documentation/printk-formats.txt

Here is the screenshot of my Sample Example Code discussed in the video above:
Screenshot
Screenshot

(API) Watch Video: Linux Kernel struct tcphdr data-structure - part1 - code walk, Example
Linux Kernel struct tcphdr data-structure - part1 - code walk, Example
* Click the image to watch this video on Youtube ↗

Refer:
struct tcphdr data-structure - http://elixir.free-electrons.com/linux/latest/source/include/uapi/linux/tcp.h#L24
sk_buff to tcphdr APIs - http://elixir.free-electrons.com/linux/latest/source/include/linux/tcp.h
Definitions for the TCP module - http://elixir.free-electrons.com/linux/latest/source/include/net/tcp.h

And here is the copy paste of struct tcp data-structure (/include/uapi/linux/tcp.h) from the Kernel-source version 4.13 for quick reference:

struct tcphdr {
	__be16	source;
	__be16	dest;
	__be32	seq;
	__be32	ack_seq;
#if defined(__LITTLE_ENDIAN_BITFIELD)
	__u16	res1:4,
		doff:4,
		fin:1,
		syn:1,
		rst:1,
		psh:1,
		ack:1,
		urg:1,
		ece:1,
		cwr:1;
#elif defined(__BIG_ENDIAN_BITFIELD)
	__u16	doff:4,
		res1:4,
		cwr:1,
		ece:1,
		urg:1,
		ack:1,
		psh:1,
		rst:1,
		syn:1,
		fin:1;
#else
#error	"Adjust your  defines"
#endif	
	__be16	window;
	__sum16	check;
	__be16	urg_ptr;
};



Suggested Topics:


Linux Kernel programming :: Video Episodes
Linux Kernel struct ethhdr data-structure ↗
02-Nov-2016

Linux Kernel TCP Congestion Control Algorithms ↗
20-Nov-2017

Linux Kernel Programming ↗
05-Jul-2016

Linux Kernel Architecture - Generic ↗
13-May-2017

Linux Kernel Networking Sub-system ↗
05-Jul-2016

Linux Kernel struct tcphdr data-structure ↗
05-Jul-2016

Linux Kernel Compilation ↗
05-Jul-2016

Linux Kernel struct iphdr data-structure ↗
05-Jul-2016

Linux Kernel FileSystems Subsystem ↗
16-Dec-2017

Linux Kernel struct socket and struct sock data-structure ↗
31-Oct-2017

Linux Kernel Programming - Device Drivers ↗
30-Mar-2018

Linux Kernel Network Programming - struct net - struct netns_ipv4 - /proc/sys/net/ipv4 ↗
21-May-2018

Linux Kernel sk_buff data-structure - Episode-1 to Episode-10 ↗
05-Jul-2016

Linux Kernel Network Programming ↗
05-Nov-2017

Linux ioctl() API interface ↗
11-Oct-2017

Linux Kernel net_device data-structure ↗
05-Jul-2016

Linux Kernel struct udphdr data-structure ↗
05-Jul-2016

Linux Operating System - User-space Processes ↗
22-Jan-2018

Linux Kernel dst_entry data-structure ↗
04-May-2017

Linux Kernel /proc Interface ↗
22-Feb-2017

Linux Kernel sk_buff data-structure - Episode-11 to Episode-18 ↗
26-Mar-2017

Linux Kernel - Containers and Namespaces ↗
11-Feb-2018

Linux Kernel Network Programming - Transport Layer L4 TCP/UDP Registration - Protocol APIs ↗
20-Sep-2019

 

Join The Linux Channel :: Facebook Group


Join a course:

💎 Linux, Kernel, Networking and Device Drivers: PDF Brochure
💎 PhD or equivalent (or Post Doctoral) looking for assistance: Details
💎 ... or unlimited life-time mentorship: Details


💗 Help shape the future: Sponsor/Donate


Recommended Topics:
Western Digital WDS240G2G0A 240GB SATA III 6GB/s 2.5 7mm Internal SSD (Green)
Buy at Amazon Buy at Amazon

Featured Video:
(API) Watch Video: 0x1dd Layer-2 (L2) Multicast Frame Deep Analysis | Part 2 | #TheLinuxChannel #Networking
0x1dd Layer-2 (L2) Multicast Frame Deep Analysis | Part 2 | #TheLinuxChannel #Networking
* Click the image to watch this video on Youtube ↗

Download: Linux kernel Development.pdf


Trending Video:
(API) Watch Video: 0x1ab Understanding Ecosystem - Windows vs Linux || The Linux Channel
0x1ab Understanding Ecosystem - Windows vs Linux || The Linux Channel
* Click the image to watch this video on Youtube ↗

TUTORIALS :: Linux Networking Stack :: RFS: Receive Flow Steering:


Linux ioctl() API interface:


Research :: Content Delivery Networks (CDN):
CDN Networks


Recommended Video:
(API) Watch Video: 0x1ce New Job Offer? verify in Glassdoor before you join #TheLinuxChannel #KiranKankipati
0x1ce New Job Offer? verify in Glassdoor before you join #TheLinuxChannel #KiranKankipati
* Click the image to watch this video on Youtube ↗