2018-04-10 10:50 UTC-0700 ~ Andrey Ignatov <rdna@xxxxxx> > Quentin Monnet <quentin.monnet@xxxxxxxxxxxxx> [Tue, 2018-04-10 07:43 -0700]: >> + * int bpf_bind(struct bpf_sock_addr_kern *ctx, struct sockaddr *addr, int addr_len) >> + * Description >> + * Bind the socket associated to *ctx* to the address pointed by >> + * *addr*, of length *addr_len*. This allows for making outgoing >> + * connection from the desired IP address, which can be useful for >> + * example when all processes inside a cgroup should use one >> + * single IP address on a host that has multiple IP configured. >> + * >> + * This helper works for IPv4 and IPv6, TCP and UDP sockets. The >> + * domain (*addr*\ **->sa_family**) must be **AF_INET** (or >> + * **AF_INET6**). Looking for a free port to bind to can be >> + * expensive, therefore binding to port is not permitted by the >> + * helper: *addr*\ **->sin_port** (or **sin6_port**, respectively) >> + * must be set to zero. >> + * >> + * As for the remote end, both parts of it can be overridden, >> + * remote IP and remote port. This can be useful if an application >> + * inside a cgroup wants to connect to another application inside >> + * the same cgroup or to itself, but knows nothing about the IP >> + * address assigned to the cgroup. > > The last paragraph ("As for the remote end ...") is not relevant to > bpf_bind() and should be removed. It's about sys_connect hook itself > that can call to bpf_bind() but also has other functionality (and that > other functionality is described by this paragraph). Thanks Andrey, I will remove this paragraph. Quentin -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html