Кто-либо знает, какая функция или файл в Linux содержат алгоритм, который находит, что случайный порт использует для связывания () системный вызов? Я ищу на всем протяжении и не могу найти метод, который содержит этот алгоритм в источнике Linux.
Спасибо!
Это длинный и сложный фрагмент кода, который Я не очень хочу пытаться грокнуть. : -)
Посмотрите на функцию inet_csk_get_port
(в net / ipv4 / inet_connection_sock.c
) для TCP и udp_lib_get_port
(в ] net / ipv4 / udp.c
) для UDP. Это справедливо, по крайней мере, для 2.6.31, хотя может отличаться для разных версий.
Это то, что вы ищете?
u32 secure_ipv4_port_ephemeral (__ be32 saddr, __be32 daddr, __be16 dport);