summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ctld/ctld.h
diff options
context:
space:
mode:
authortrasz <trasz@FreeBSD.org>2014-10-29 09:26:55 +0000
committertrasz <trasz@FreeBSD.org>2014-10-29 09:26:55 +0000
commitb73c1cc9fd2cad61d5764afc9111df0e0ac1bb21 (patch)
tree417bc9bb3b2edcd998af4172663bf2157043a24a /usr.sbin/ctld/ctld.h
parente8852d82cc71dc9a97e048dd3eaa8993cf53fb78 (diff)
downloadFreeBSD-src-b73c1cc9fd2cad61d5764afc9111df0e0ac1bb21.zip
FreeBSD-src-b73c1cc9fd2cad61d5764afc9111df0e0ac1bb21.tar.gz
Add discovery-filter. This makes it possible to restrict which targets
are returned during discovery based on initiator portal, name, and CHAP credentials. Reviewed by: mav@ MFC after: 1 month Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'usr.sbin/ctld/ctld.h')
-rw-r--r--usr.sbin/ctld/ctld.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/usr.sbin/ctld/ctld.h b/usr.sbin/ctld/ctld.h
index 1c7d4cb..9430168 100644
--- a/usr.sbin/ctld/ctld.h
+++ b/usr.sbin/ctld/ctld.h
@@ -103,11 +103,18 @@ struct portal {
int p_socket;
};
+#define PG_FILTER_UNKNOWN 0
+#define PG_FILTER_NONE 1
+#define PG_FILTER_PORTAL 2
+#define PG_FILTER_PORTAL_NAME 3
+#define PG_FILTER_PORTAL_NAME_AUTH 4
+
struct portal_group {
TAILQ_ENTRY(portal_group) pg_next;
struct conf *pg_conf;
char *pg_name;
struct auth_group *pg_discovery_auth_group;
+ int pg_discovery_filter;
bool pg_unassigned;
TAILQ_HEAD(, portal) pg_portals;
@@ -200,6 +207,8 @@ struct connection {
int conn_immediate_data;
int conn_header_digest;
int conn_data_digest;
+ const char *conn_user;
+ struct chap *conn_chap;
};
struct pdu {
@@ -290,6 +299,8 @@ struct portal_group *portal_group_find(const struct conf *conf,
const char *name);
int portal_group_add_listen(struct portal_group *pg,
const char *listen, bool iser);
+int portal_group_set_filter_str(struct portal_group *pg,
+ const char *filter);
int isns_new(struct conf *conf, const char *addr);
void isns_delete(struct isns *is);
OpenPOWER on IntegriCloud