summaryrefslogtreecommitdiffstats
path: root/sys/net/if_lagg.h
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2014-10-02 20:01:13 +0000
committerhrs <hrs@FreeBSD.org>2014-10-02 20:01:13 +0000
commitdb53b4f174a16339cf9f36006387340afe0dc03e (patch)
tree8d305540de855e3d9297a747b3d32f393253d873 /sys/net/if_lagg.h
parent1319daf6688fee426cae9267e4467a62398a4c14 (diff)
downloadFreeBSD-src-db53b4f174a16339cf9f36006387340afe0dc03e.zip
FreeBSD-src-db53b4f174a16339cf9f36006387340afe0dc03e.tar.gz
Separate option handling from SIOC[SG]LAGG to SIOC[SG]LAGGOPTS for
backward compatibility with old ifconfig(8).
Diffstat (limited to 'sys/net/if_lagg.h')
-rw-r--r--sys/net/if_lagg.h34
1 files changed, 21 insertions, 13 deletions
diff --git a/sys/net/if_lagg.h b/sys/net/if_lagg.h
index 6c39d1c..bbb3497 100644
--- a/sys/net/if_lagg.h
+++ b/sys/net/if_lagg.h
@@ -125,19 +125,6 @@ struct lagg_reqall {
struct lacp_opreq rpsc_lacp;
} ra_psc;
#define ra_lacpreq ra_psc.rpsc_lacp
- int ra_opts; /* Option bitmap */
-#define LAGG_OPT_NONE 0x00
-#define LAGG_OPT_USE_FLOWID 0x01 /* use M_FLOWID */
-/* Pseudo flags which are used in ra_opts but not stored into sc_opts. */
-#define LAGG_OPT_FLOWIDSHIFT 0x02 /* Set flowid */
-#define LAGG_OPT_FLOWIDSHIFT_MASK 0x1f /* flowid is uint32_t */
-#define LAGG_OPT_LACP_STRICT 0x10 /* LACP strict mode */
-#define LAGG_OPT_LACP_TXTEST 0x20 /* LACP debug: txtest */
-#define LAGG_OPT_LACP_RXTEST 0x40 /* LACP debug: rxtest */
- u_int ra_count; /* number of ports */
- u_int ra_active; /* active port count */
- u_int ra_flapping; /* number of flapping */
- int ra_flowid_shift; /* shift the flowid */
};
#define SIOCGLAGG _IOWR('i', 143, struct lagg_reqall)
@@ -151,6 +138,27 @@ struct lagg_reqflags {
#define SIOCGLAGGFLAGS _IOWR('i', 145, struct lagg_reqflags)
#define SIOCSLAGGHASH _IOW('i', 146, struct lagg_reqflags)
+struct lagg_reqopts {
+ char ro_ifname[IFNAMSIZ]; /* name of the lagg */
+
+ int ro_opts; /* Option bitmap */
+#define LAGG_OPT_NONE 0x00
+#define LAGG_OPT_USE_FLOWID 0x01 /* use M_FLOWID */
+/* Pseudo flags which are used in ro_opts but not stored into sc_opts. */
+#define LAGG_OPT_FLOWIDSHIFT 0x02 /* Set flowid */
+#define LAGG_OPT_FLOWIDSHIFT_MASK 0x1f /* flowid is uint32_t */
+#define LAGG_OPT_LACP_STRICT 0x10 /* LACP strict mode */
+#define LAGG_OPT_LACP_TXTEST 0x20 /* LACP debug: txtest */
+#define LAGG_OPT_LACP_RXTEST 0x40 /* LACP debug: rxtest */
+ u_int ro_count; /* number of ports */
+ u_int ro_active; /* active port count */
+ u_int ro_flapping; /* number of flapping */
+ int ro_flowid_shift; /* shift the flowid */
+};
+
+#define SIOCGLAGGOPTS _IOWR('i', 152, struct lagg_reqopts)
+#define SIOCSLAGGOPTS _IOW('i', 153, struct lagg_reqopts)
+
#ifdef _KERNEL
/*
OpenPOWER on IntegriCloud