s3/utils: Detect (and report) failure to parse sddl
authorNoel Power <noel.power@suse.com>
Wed, 15 Nov 2023 12:55:36 +0000 (12:55 +0000)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 16 Nov 2023 01:51:39 +0000 (01:51 +0000)
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
source3/utils/smbcacls.c

index 0575a254c29bdddead09f340ee02772bdbc254ab..0316868fb3df39bf440f2808db257d7aa984b3aa 100644 (file)
@@ -2108,6 +2108,11 @@ static int cacl_restore(struct cli_state *cli,
                        }
                } else {
                        entries[index].sd = sddl_decode(lines, lines[i], sid);
+                       if(entries[index].sd == NULL) {
+                               DBG_ERR("could not decode '%s'\n", lines[i]);
+                               result = EXIT_FAILED;
+                               goto out;
+                       }
                        entries[index].sd->type |=
                            SEC_DESC_DACL_AUTO_INHERIT_REQ;
                        entries[index].sd->type |= SEC_DESC_SACL_AUTO_INHERITED;