Index: samba-4.10.1/libcli/security/util_sid.c =================================================================== --- samba-4.10.1.orig/libcli/security/util_sid.c +++ samba-4.10.1/libcli/security/util_sid.c @@ -686,6 +686,17 @@ static const struct predefined_name_mapp }; /* + * S-1-15 + */ +static const struct predefined_name_mapping predefined_names_S_1_15[] = { + { + .name = "Capability", + .type = SID_NAME_DOMAIN, + .sid = _SID0(15), /* S-1-15 */ + }, +}; + +/* * S-1-16 */ static const struct predefined_name_mapping predefined_names_S_1_16[] = { @@ -726,6 +737,69 @@ static const struct predefined_name_mapp }, }; +/* + * S-1-17 + */ +static const struct predefined_name_mapping predefined_names_S_1_17[] = { + { + .name = "Scoped Policy ID", + .type = SID_NAME_DOMAIN, + .sid = _SID0(17), /* S-1-17 */ + }, +}; + +/* + * S-1-18 + */ +static const struct predefined_name_mapping predefined_names_S_1_18[] = { + { + .name = "Security Authentication Authority", + .type = SID_NAME_DOMAIN, + .sid = _SID0(18), /* S-1-18 */ + }, + { + .name = "Authentication Authority Asserted Identity", + .type = SID_NAME_LABEL, + .sid = _SID1(18, 1), /* S-1-18-1 */ + }, + { + .name = "Service Asserted Identity", + .type = SID_NAME_LABEL, + .sid = _SID1(18, 2), /* S-1-18-2 */ + }, + { + .name = "Fresh Public Key Identity", + .type = SID_NAME_LABEL, + .sid = _SID1(18, 3), /* S-1-18-3 */ + }, + { + .name = "Key Trust Identity", + .type = SID_NAME_LABEL, + .sid = _SID1(18, 4), /* S-1-18-4 */ + }, + { + .name = "Key Property MFA", + .type = SID_NAME_LABEL, + .sid = _SID1(18, 5), /* S-1-18-5 */ + }, + { + .name = "Key Property Attestation", + .type = SID_NAME_LABEL, + .sid = _SID1(18, 6), /* S-1-18-6 */ + }, +}; + +/* + * S-1-22 + */ +static const struct predefined_name_mapping predefined_names_S_1_22[] = { + { + .name = "Unix", + .type = SID_NAME_DOMAIN, + .sid = _SID0(22), /* S-1-22 */ + }, +}; + static const struct predefined_domain_mapping predefined_domains[] = { { .domain = "", @@ -802,11 +876,35 @@ static const struct predefined_domain_ma .names = predefined_names_S_1_7, }, { + .domain = "Capability", + .sid = _SID0(15), /* S-1-15 */ + .num_names = ARRAY_SIZE(predefined_names_S_1_15), + .names = predefined_names_S_1_15, + }, + { .domain = "Mandatory Label", .sid = _SID0(16), /* S-1-16 */ .num_names = ARRAY_SIZE(predefined_names_S_1_16), .names = predefined_names_S_1_16, }, + { + .domain = "Scoped Policy ID", + .sid = _SID0(16), /* S-1-17 */ + .num_names = ARRAY_SIZE(predefined_names_S_1_17), + .names = predefined_names_S_1_17, + }, + { + .domain = "Scoped Policy ID", + .sid = _SID0(18), /* S-1-18 */ + .num_names = ARRAY_SIZE(predefined_names_S_1_18), + .names = predefined_names_S_1_18, + }, + { + .domain = "Unix", + .sid = _SID0(22), /* S-1-22 */ + .num_names = ARRAY_SIZE(predefined_names_S_1_22), + .names = predefined_names_S_1_22, + }, }; NTSTATUS dom_sid_lookup_predefined_name(const char *name,