[PATCH net-next v2 3/6] gtp: unify genl_find_pdp and prepare for per socket lookup

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Pablo Neira Ayuso pablo at netfilter.org
Thu Feb 2 14:19:51 UTC 2017


On Mon, Jan 30, 2017 at 05:37:10PM +0100, Andreas Schultz wrote:
> This unifies duplicate code into a helper. It also prepares the
> groundwork to add a lookup version that uses the socket to find
> attache pdp contexts.
> 
> Signed-off-by: Andreas Schultz <aschultz at tpip.net>
> ---
>  drivers/net/gtp.c | 120 +++++++++++++++++++++++-------------------------------
>  1 file changed, 51 insertions(+), 69 deletions(-)
> 
> diff --git a/drivers/net/gtp.c b/drivers/net/gtp.c
> index c96c71f..6b7a3c2 100644
> --- a/drivers/net/gtp.c
> +++ b/drivers/net/gtp.c
[...]
> +static struct pdp_ctx *gtp_genl_find_pdp(struct sk_buff *skb,
> +					 struct genl_info *info)
> +{
> +	struct pdp_ctx *pctx;
> +
> +	if (info->attrs[GTPA_LINK])
> +		pctx = gtp_genl_find_pdp_by_link(skb, info);
> +	else
> +		pctx = ERR_PTR(-EINVAL);
> +	if (!pctx)
> +		pctx = ERR_PTR(-ENOENT);
> +
> +	return pctx;
> +}

For gtp_genl_find_pdp(),  I think this is easier to read:

        if (!info->attrs[GTPA_LINK])
                return ERR_PTR(-EINVAL);

        pctx = gtp_genl_find_pdp_by_link(skb, info);
	if (!pctx)
		return ERR_PTR(-ENOENT);

        return pctx;



More information about the OpenBSC mailing list