This patch adds an optional /auth/ configfs group to TPG context that can be used by fabrics like iscsi-target for TPG demo-mode authentication.
Showing the changes to include/target (3 of 4 files). Show all
Unified · Split
| @@ -795,11 +795,12 @@ struct se_portal_group { · 794 unmodified lines | ||
| 795 | 795 | struct target_core_fabric_ops *se_tpg_tfo; |
| 796 | 796 | struct se_wwn *se_tpg_wwn; |
| 797 | 797 | struct config_group tpg_group; |
| 798 | − struct config_group *tpg_default_groups[6]; | |
| 798 | + struct config_group *tpg_default_groups[7]; | |
| 799 | 799 | struct config_group tpg_lun_group; |
| 800 | 800 | struct config_group tpg_np_group; |
| 801 | 801 | struct config_group tpg_acl_group; |
| 802 | 802 | struct config_group tpg_attrib_group; |
| 803 | + struct config_group tpg_auth_group; | |
| 803 | 804 | struct config_group tpg_param_group; |
| 804 | 805 | }; |
| 805 | 806 | |
| @@ -23,6 +23,7 @@ struct target_fabric_configfs_template { · 22 unmodified lines | ||
| 23 | 23 | struct config_item_type tfc_tpg_np_cit; |
| 24 | 24 | struct config_item_type tfc_tpg_np_base_cit; |
| 25 | 25 | struct config_item_type tfc_tpg_attrib_cit; |
| 26 | + struct config_item_type tfc_tpg_auth_cit; | |
| 26 | 27 | struct config_item_type tfc_tpg_param_cit; |
| 27 | 28 | struct config_item_type tfc_tpg_nacl_cit; |
| 28 | 29 | struct config_item_type tfc_tpg_nacl_base_cit; |
| @@ -62,6 +62,17 @@ static struct target_fabric_tpg_attrib_attribute _fabric##_tpg_attrib_##_name = · 61 unmodified lines | ||
| 62 | 62 | _fabric##_tpg_attrib_show_##_name, \ |
| 63 | 63 | _fabric##_tpg_attrib_store_##_name); |
| 64 | 64 | |
| 65 | +CONFIGFS_EATTR_STRUCT(target_fabric_tpg_auth, se_portal_group); | |
| 66 | +#define TF_TPG_AUTH_ATTR(_fabric, _name, _mode) \ | |
| 67 | +static struct target_fabric_tpg_auth_attribute _fabric##_tpg_auth_##_name = \ | |
| 68 | + __CONFIGFS_EATTR(_name, _mode, \ | |
| 69 | + _fabric##_tpg_auth_show_##_name, \ | |
| 70 | + _fabric##_tpg_auth_store_##_name); | |
| 71 | + | |
| 72 | +#define TF_TPG_AUTH_ATTR_RO(_fabric, _name) \ | |
| 73 | +static struct target_fabric_tpg_auth_attribute _fabric##_tpg_auth_##_name = \ | |
| 74 | + __CONFIGFS_EATTR_RO(_name, \ | |
| 75 | + _fabric##_tpg_auth_show_##_name); | |
| 65 | 76 | |
| 66 | 77 | CONFIGFS_EATTR_STRUCT(target_fabric_tpg_param, se_portal_group); |
| 67 | 78 | #define TF_TPG_PARAM_ATTR(_fabric, _name, _mode) \ |