From: Patrick McHardy <kaber@trash.net>
To: Inaky Perez-Gonzalez <inaky@linux.intel.com>
Cc: netdev@vger.kernel.org, wimax@linuxwimax.org
Subject: Re: [PATCH 09/39] wimax: provides user space with information needed when opening a WiMAX device
Date: Thu, 27 Nov 2008 11:44:46 +0100 [thread overview]
Message-ID: <492E7A1E.4010906@trash.net> (raw)
In-Reply-To: <61e0e60ace9f0c441b51e5009d304229c4b234d3.1227691434.git.inaky@linux.intel.com>
Inaky Perez-Gonzalez wrote:
> +static
> +int __wimax_gnl_open_reply(struct wimax_dev *wimax_dev,
> + struct genl_info *genl_info)
> +{
> + int result;
> + void *data;
> + struct sk_buff *reply_skb;
> + struct nlattr *nla_groups, *nla_group;
> + struct wimax_pipe *pipe_itr;
> +
> + result = -ENOMEM;
> + reply_skb = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL);
> + if (reply_skb == NULL)
> + goto error_new;
> + data = genlmsg_put_reply(reply_skb, genl_info,
> + &wimax_dev->gnl_family,
> + 0, WIMAX_GNL_RP_IFINFO);
> + if (data == NULL)
> + goto error_put_reply;
> +
> + nla_groups = nla_nest_start(reply_skb, WIMAX_GNL_IFINFO_MC_GROUPS);
> + if (nla_groups == NULL)
> + goto error_groups_start;
> +
> + list_for_each_entry(pipe_itr, &wimax_dev->pipe_list,
> + list_node) {
> + nla_group = nla_nest_start(reply_skb,
> + WIMAX_GNL_IFINFO_MC_GROUP);
> + if (nla_group == NULL)
> + goto error_group_start;
> +
> + nla_put_u16(reply_skb, WIMAX_GNL_IFINFO_MC_ID,
> + pipe_itr->mcg.id);
> + nla_put_string(reply_skb, WIMAX_GNL_IFINFO_MC_NAME,
> + pipe_itr->mcg.name);
The nla_put results must be checked unless there's a guarantee that
the attributes won't exceed the skbs size.
> + nla_nest_end(reply_skb, nla_group);
> + }
> + nla_nest_end(reply_skb, nla_groups);
> + genlmsg_end(reply_skb, data);
> +
> + result = genlmsg_reply(reply_skb, genl_info);
> + if (result < 0)
> + goto error_reply;
> + return 0;
> +
> +error_group_start:
> +error_groups_start:
> +error_reply:
> +error_put_reply:
This seems a bit excessive considering that its very unlikely
that you'll ever need to distinguish these cases.
> + nlmsg_free(reply_skb);
> +error_new:
> + return result;
> +}
next prev parent reply other threads:[~2008-11-27 10:44 UTC|newest]
Thread overview: 97+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-26 22:40 [PATCH 00/39] merge request for WiMAX kernel stack and i2400m driver v2 Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 01/39] wimax: documentation for the stack Inaky Perez-Gonzalez
2008-11-27 9:29 ` Johannes Berg
2008-12-03 2:07 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 02/39] wimax: declarations for the in-kernel WiMAX API Inaky Perez-Gonzalez
2008-11-27 9:32 ` Johannes Berg
2008-12-03 2:07 ` Inaky Perez-Gonzalez
2008-12-04 9:04 ` Johannes Berg
2008-12-04 20:11 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 03/39] wimax: constants and definitions to interact with user space Inaky Perez-Gonzalez
2008-11-27 9:41 ` Johannes Berg
2008-12-03 2:06 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 04/39] wimax: internal API for the kernel space WiMAX stack Inaky Perez-Gonzalez
2008-11-27 9:43 ` Johannes Berg
2008-12-03 2:07 ` Inaky Perez-Gonzalez
2008-12-04 9:02 ` Johannes Berg
2008-12-04 19:22 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 05/39] wimax: debug macros and debug settings for the " Inaky Perez-Gonzalez
2008-11-27 9:28 ` Johannes Berg
2008-12-03 2:07 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 06/39] genetlink: export genl_unregister_mc_group() Inaky Perez-Gonzalez
2008-11-26 23:07 ` Johannes Berg
2008-11-26 22:40 ` [PATCH 07/39] wimax: generic WiMAX device management (registration, deregistration, etc) Inaky Perez-Gonzalez
2008-11-27 10:40 ` Patrick McHardy
2008-12-03 2:06 ` Inaky Perez-Gonzalez
2008-12-04 13:02 ` Patrick McHardy
2008-11-26 22:40 ` [PATCH 08/39] wimax: Mappping of generic netlink family IDs to net devices Inaky Perez-Gonzalez
2008-11-27 9:47 ` Johannes Berg
2008-12-03 2:06 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 09/39] wimax: provides user space with information needed when opening a WiMAX device Inaky Perez-Gonzalez
2008-11-27 9:53 ` Johannes Berg
2008-11-27 12:20 ` Johannes Berg
2008-12-03 2:06 ` Inaky Perez-Gonzalez
2008-11-27 10:44 ` Patrick McHardy [this message]
2008-11-26 22:40 ` [PATCH 10/39] wimax: Generic messaging interface between user space and driver/device Inaky Perez-Gonzalez
2008-11-27 9:55 ` Johannes Berg
2008-11-27 12:35 ` Thomas Graf
2008-12-03 2:02 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 11/39] wimax: RF-kill framework integration Inaky Perez-Gonzalez
2008-11-27 9:56 ` Johannes Berg
2008-12-03 2:03 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 12/39] wimax: API call to reset a WiMAX device Inaky Perez-Gonzalez
2008-11-27 9:58 ` Johannes Berg
2008-12-03 2:05 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 13/39] wimax: Makefile, Kconfig and docbook linkage for the stack Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 14/39] i2400m: documentation and instructions for usage Inaky Perez-Gonzalez
2008-11-27 10:01 ` Johannes Berg
2008-12-03 2:06 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 15/39] i2400m: host-to-device protocol definitions Inaky Perez-Gonzalez
2008-11-27 10:04 ` Johannes Berg
2008-12-03 2:06 ` Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 16/39] i2400m: core driver definitions and API Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 17/39] i2400m: Generic probe/disconnect, reset and message passing Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 18/39] i2400m: linkage to the networking stack Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 19/39] i2400m: sysfs controls Inaky Perez-Gonzalez
2008-11-27 9:23 ` Johannes Berg
2008-11-26 22:40 ` [PATCH 20/39] i2400m: rfkill integration with the WiMAX stack Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 21/39] i2400m: firmware loading and bootrom initialization Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 22/39] i2400m: handling of the data/control reception path Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 23/39] i2400m: handling of the data/control transmission path Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 24/39] i2400m: various functions for device management Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 25/39] i2400m/USB: header for the USB bus driver Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 26/39] i2400m/USB: error density tracking Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 27/39] i2400m/USB: main probe/disconnect and backend routines Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 28/39] i2400m/USB: firmware upload backend Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 29/39] i2400m/USB: handling of notifications from the device Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 30/39] i2400m/USB: read transactions from the USB device Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 31/39] i2400m/USB: write transactions to " Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 32/39] i2400m/SDIO: header for the SDIO subdriver Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 33/39] i2400m/SDIO: main probe/disconnect and backend routines Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 34/39] i2400m/SDIO: firmware upload backend Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 35/39] i2400m/SDIO: read transactions from the SDIO device Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 36/39] i2400m/SDIO: write transactions to " Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 37/39] i2400m: Makefile and Kconfig Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 38/39] wimax: export linux/wimax.h and linux/wimax/i2400m.h with headers_install Inaky Perez-Gonzalez
2008-11-26 22:40 ` [PATCH 39/39] wimax/i2400m: add CREDITS and MAINTAINERS entries Inaky Perez-Gonzalez
2008-11-27 8:17 ` [PATCH 00/39] merge request for WiMAX kernel stack and i2400m driver v2 David Miller
2008-11-27 9:24 ` Inaky Perez-Gonzalez
2008-11-27 10:18 ` Arkadiusz Miskiewicz
2008-11-27 10:41 ` Marcel Holtmann
2008-11-27 10:54 ` Johannes Berg
2008-11-27 11:14 ` Marcel Holtmann
2008-11-27 11:23 ` Johannes Berg
2008-11-30 4:05 ` Dan Williams
2008-11-27 11:47 ` Andi Kleen
2008-11-27 11:50 ` Johannes Berg
2008-11-27 16:51 ` Inaky Perez-Gonzalez
2008-12-03 2:07 ` Inaky Perez-Gonzalez
2008-12-03 23:03 ` Dan Williams
2008-12-04 9:00 ` Johannes Berg
2008-12-04 19:21 ` Inaky Perez-Gonzalez
2008-12-04 23:09 ` Johannes Berg
2008-12-03 2:10 ` Inaky Perez-Gonzalez
2008-12-04 9:01 ` Johannes Berg
2008-12-04 13:37 ` Marcel Holtmann
-- strict thread matches above, loose matches on Subject: below --
2008-11-26 7:38 Inaky Perez-Gonzalez
2008-11-26 7:39 ` [PATCH 09/39] wimax: provides user space with information needed when opening a WiMAX device Inaky Perez-Gonzalez
2008-11-24 21:50 [PATCH 00/39] merge request for WiMAX kernel stack and i2400m driver Inaky Perez-Gonzalez
2008-11-24 21:50 ` [PATCH 09/39] wimax: provides user space with information needed when opening a WiMAX device Inaky Perez-Gonzalez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=492E7A1E.4010906@trash.net \
--to=kaber@trash.net \
--cc=inaky@linux.intel.com \
--cc=netdev@vger.kernel.org \
--cc=wimax@linuxwimax.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.