/* defaults */
static int
-swconfig_get_vlan_ports(struct switch_dev *dev, struct switch_attr *attr, struct switch_val *val)
+swconfig_get_vlan_ports(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val)
{
int ret;
if (val->port_vlan >= dev->vlans)
}
static int
-swconfig_set_vlan_ports(struct switch_dev *dev, struct switch_attr *attr, struct switch_val *val)
+swconfig_set_vlan_ports(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val)
{
int i;
}
static int
-swconfig_apply_config(struct switch_dev *dev, struct switch_attr *attr, struct switch_val *val)
+swconfig_apply_config(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val)
{
/* don't complain if not supported by the switch driver */
if (!dev->apply_config)
if (alist->attr[i].disabled)
continue;
cb.args[0] = i;
- err = swconfig_send_multipart(&cb, &alist->attr[i]);
+ err = swconfig_send_multipart(&cb, (void *) &alist->attr[i]);
if (err < 0)
goto error;
}
if (!test_bit(i, def_active))
continue;
cb.args[0] = SWITCH_ATTR_DEFAULTS_OFFSET + i;
- err = swconfig_send_multipart(&cb, &def_list[i]);
+ err = swconfig_send_multipart(&cb, (void *) &def_list[i]);
if (err < 0)
goto error;
}
return err;
}
-static struct switch_attr *
+static const struct switch_attr *
swconfig_lookup_attr(struct switch_dev *dev, struct genl_info *info,
struct switch_val *val)
{
struct genlmsghdr *hdr = nlmsg_data(info->nlhdr);
const struct switch_attrlist *alist;
- struct switch_attr *attr = NULL;
+ const struct switch_attr *attr = NULL;
int attr_id;
/* defaults */
static int
swconfig_set_attr(struct sk_buff *skb, struct genl_info *info)
{
- struct switch_attr *attr;
+ const struct switch_attr *attr;
struct switch_dev *dev;
struct switch_val val;
int err = -EINVAL;
swconfig_get_attr(struct sk_buff *skb, struct genl_info *info)
{
struct genlmsghdr *hdr = nlmsg_data(info->nlhdr);
- struct switch_attr *attr;
+ const struct switch_attr *attr;
struct switch_dev *dev;
struct sk_buff *msg = NULL;
struct switch_val val;
struct switch_attrlist {
/* filled in by the driver */
int n_attr;
- struct switch_attr *attr;
+ const struct switch_attr *attr;
};
};
struct switch_val {
- struct switch_attr *attr;
+ const struct switch_attr *attr;
int port_vlan;
int len;
union {
const char *name;
const char *description;
- int (*set)(struct switch_dev *dev, struct switch_attr *attr, struct switch_val *val);
- int (*get)(struct switch_dev *dev, struct switch_attr *attr, struct switch_val *val);
+ int (*set)(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val);
+ int (*get)(struct switch_dev *dev, const struct switch_attr *attr, struct switch_val *val);
/* for driver internal use */
int id;