diff options
author | trasz <trasz@FreeBSD.org> | 2014-10-29 09:26:55 +0000 |
---|---|---|
committer | trasz <trasz@FreeBSD.org> | 2014-10-29 09:26:55 +0000 |
commit | b73c1cc9fd2cad61d5764afc9111df0e0ac1bb21 (patch) | |
tree | 417bc9bb3b2edcd998af4172663bf2157043a24a /usr.sbin/ctld/ctld.h | |
parent | e8852d82cc71dc9a97e048dd3eaa8993cf53fb78 (diff) | |
download | FreeBSD-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.h | 11 |
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); |