/* If the message is NULL, pretend it didn't happen.  */
static int wimax_gnl_re_state_change_send(struct wimax_dev *wimax_dev, struct sk_buff *report_skb, void *header)
/* If the message is NULL, pretend it didn't happen.  */
static int wimax_gnl_re_state_change_send(struct wimax_dev *wimax_dev, struct sk_buff *report_skb, void *header)
{
	int result = 0;
	struct device *dev = wimax_dev_to_dev(wimax_dev);
	d_fnstart(3, dev, "(wimax_dev %p report_skb %p)\n",
		  wimax_dev, report_skb);
	if (report_skb == NULL) {
		result = -ENOMEM;
		goto out;
	}
	genlmsg_end(report_skb, header);
	genlmsg_multicast(report_skb, 0, wimax_gnl_mcg.id, GFP_KERNEL);
out:
	d_fnend(3, dev, "(wimax_dev %p report_skb %p) = %d\n",
		wimax_dev, report_skb, result);
	return result;
}