summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys/dld.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/sys/dld.h')
-rw-r--r--usr/src/uts/common/sys/dld.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/usr/src/uts/common/sys/dld.h b/usr/src/uts/common/sys/dld.h
index 4e32398c21..783f581e68 100644
--- a/usr/src/uts/common/sys/dld.h
+++ b/usr/src/uts/common/sys/dld.h
@@ -108,6 +108,40 @@ typedef struct dld_vlan_info {
char dvi_name[IFNAMSIZ];
} dld_vlan_info_t;
+/*
+ * Secure objects ioctls
+ */
+typedef enum {
+ DLD_SECOBJ_CLASS_WEP = 1
+} dld_secobj_class_t;
+
+#define DLD_SECOBJ_OPT_CREATE 0x00000001
+#define DLD_SECOBJ_NAME_MAX 32
+#define DLD_SECOBJ_VAL_MAX 256
+typedef struct dld_secobj {
+ char so_name[DLD_SECOBJ_NAME_MAX];
+ dld_secobj_class_t so_class;
+ uint8_t so_val[DLD_SECOBJ_VAL_MAX];
+ uint_t so_len;
+} dld_secobj_t;
+
+#define DLDIOCSECOBJSET (DLDIOC | 0x05)
+typedef struct dld_ioc_secobj_set {
+ dld_secobj_t ss_obj;
+ uint_t ss_flags;
+} dld_ioc_secobj_set_t;
+
+#define DLDIOCSECOBJGET (DLDIOC | 0x06)
+typedef struct dld_ioc_secobj_get {
+ dld_secobj_t sg_obj;
+ uint_t sg_count;
+} dld_ioc_secobj_get_t;
+
+#define DLDIOCSECOBJUNSET (DLDIOC | 0x07)
+typedef struct dld_ioc_secobj_unset {
+ char su_name[DLD_SECOBJ_NAME_MAX];
+} dld_ioc_secobj_unset_t;
+
#ifdef _KERNEL
int dld_getinfo(dev_info_t *, ddi_info_cmd_t, void *, void **);
int dld_open(queue_t *, dev_t *, int, int, cred_t *);