Я запутался в разнице между переменными inet_num
и inet_sport
в файле linux/include/net/inet_sock.h
, и в документе просто говорится, что один - "локальный порт", а другой - "порт источника".
Я печатаю их в терминал, и в каждом носке inet_num и inet_sport различны. И я не могу найти больше документов об этом.
/* linux/include/net/inet_sock.h */
/** struct inet_sock - representation of INET sockets
*
* @sk - ancestor class
* @pinet6 - pointer to IPv6 control block
* @inet_daddr - Foreign IPv4 addr
* @inet_rcv_saddr - Bound local IPv4 addr
* @inet_dport - Destination port
* @inet_num - Local port
* @inet_saddr - Sending source
* @uc_ttl - Unicast TTL
* @inet_sport - Source port
* @inet_id - ID counter for DF pkts
* @tos - TOS
* @mc_ttl - Multicasting TTL
* @is_icsk - is this an inet_connection_sock?
* @uc_index - Unicast outgoing device index
* @mc_index - Multicast device index
* @mc_list - Group array
* @cork - info to build ip hdr on each ip frag while socket is corked
*/
Что они обозначают? В чем разница между ними? Как их использовать?