Я пытаюсь интегрировать многопутевой tcp (https://www.multipath-tcp.org/) в проект, и я хотел бы изменить исходный код, чтобы вручную выбрать порт исходящего сокета для нового подпотока mptcp, чтобы я мог идентифицировать входящие и исходящие пакеты в моем приложении.
Адрес создается с помощью:
inet_create(sock_net(meta_sk), &sock, IPPROTO_TCP, 1);
и связаны:
sock.ops->bind(&sock, (struct sockaddr *)&loc_in, sizeof(struct sockaddr_in));
а потом подключил:
sock.ops->connect(&sock, (struct sockaddr *)&rem_in,
sizeof(struct sockaddr_in), O_NONBLOCK);
У меня такой вопрос: как я могу вручную установить исходящий порт сокета на уровне ядра и / или где установлен порт в этой последовательности вызовов, чтобы я мог его изменить?