[Top] [All Lists]

Re: linux-wireless mailing list

To: jt@xxxxxxxxxx
Subject: Re: linux-wireless mailing list
From: Jeff Garzik <jgarzik@xxxxxxxxx>
Date: Wed, 10 Mar 2004 12:46:09 -0500
Cc: Pavel Roskin <proski@xxxxxxx>, Netdev <netdev@xxxxxxxxxxx>
In-reply-to: <20040305040352.GA16669@xxxxxxxxxxxxxxxxxx>
References: <Pine.LNX.4.58.0403031656090.22365@xxxxxxxxxxxxxxxxxxxxxxxx> <40469DA1.9090502@xxxxxxxxx> <20040305040352.GA16669@xxxxxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030703
Jean Tourrilhes wrote:
+static inline int rtnetlink_standard_call(struct net_device *  dev,
+                                         struct iw_event *     request,
+                                         int                   request_len,
+                                         iw_handler            handler)
+       const struct iw_ioctl_description *     descr = NULL;
+       unsigned int                            cmd;
+       union iwreq_data *                      wrqu;
+       int                                     hdr_len;
+       struct iw_request_info                  info;
+       int                                     ret = -EINVAL;
+       /* Get the description of the IOCTL */
+       cmd = request->cmd;
+       if((cmd - SIOCIWFIRST) >= standard_ioctl_num)
+               return -EOPNOTSUPP;
+       descr = &(standard_ioctl[cmd - SIOCIWFIRST]);

OK, this patch looks good to me.

There is one piece we need to change though, that will cause the size of this patch to increase a bit.

Look at ethtool_ops, and net/core/ethtool.c, in the current upstream 2.4 and 2.6 trees.

A key goal of mine is to completely eliminate the union and the iw_handler type. To increase type-safety, and to decrease the pain of going through 32<->64-bit translation layers, each wireless hook needs to have a specific (not generic) interface (a la ethtool_ops).


<Prev in Thread] Current Thread [Next in Thread>