From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00082601.pphosted.com ([67.231.145.42]:55914 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751874AbeDJRv4 (ORCPT ); Tue, 10 Apr 2018 13:51:56 -0400 Date: Tue, 10 Apr 2018 10:50:16 -0700 From: Andrey Ignatov To: Quentin Monnet CC: , , , , , , Lawrence Brakmo , Yonghong Song , Josef Bacik Subject: Re: [RFC bpf-next v2 7/8] bpf: add documentation for eBPF helpers (51-57) Message-ID: <20180410175015.GA6762@rdna-mbp.dhcp.thefacebook.com> References: <20180410144157.4831-1-quentin.monnet@netronome.com> <20180410144157.4831-8-quentin.monnet@netronome.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline In-Reply-To: <20180410144157.4831-8-quentin.monnet@netronome.com> Sender: netdev-owner@vger.kernel.org List-ID: Quentin Monnet [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). -- Andrey Ignatov