The branch, v4-20-test has been updated
       via  69b69bb2085 libgpo: Do not segfault if we don't have a valid 
security descriptor
       via  72bd247c97d libgpo: Fix trailing spaces in pygpo.c
      from  4d1536f86b9 VERSION: Bump version up to Samba 4.20.0rc5...

https://git.samba.org/?p=samba.git;a=shortlog;h=v4-20-test


- Log -----------------------------------------------------------------
commit 69b69bb2085dfc842292db14eadbcba71b096d69
Author: Andreas Schneider <a...@samba.org>
Date:   Tue Mar 5 13:17:19 2024 +0100

    libgpo: Do not segfault if we don't have a valid security descriptor
    
    Program received signal SIGSEGV, Segmentation fault.
    ndr_push_security_descriptor (ndr=ndr@entry=0x555555bf41b0, 
ndr_flags=ndr_flags@entry=768, r=r@entry=0x0) at 
librpc/gen_ndr/ndr_security.c:713
    713                         
NDR_CHECK(ndr_push_security_descriptor_revision(ndr, NDR_SCALARS, r->revision));
    
    Thread 1 (Thread 0x7ffff7ece740 (LWP 21460) "python3"):
     #0  ndr_push_security_descriptor (ndr=ndr@entry=0x555555bf41b0, 
ndr_flags=ndr_flags@entry=768, r=r@entry=0x0) at 
librpc/gen_ndr/ndr_security.c:713
            _flags_save_STRUCT = 0
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            _status = <optimized out>
            __FUNCTION__ = "ndr_push_security_descriptor"
     #1  0x00007ffff617237f in ndr_push_struct_blob 
(blob=blob@entry=0x7fffffffdb20, mem_ctx=0x555555aa3bd0, p=0x0, 
fn=0x7ffff6074ad0 <ndr_push_security_descriptor>, fn@entry=0x7ffff60706c8 
<ndr_push_security_descriptor@plt>) at ../../librpc/ndr/ndr.c:1438
            _status = <optimized out>
            ndr = 0x555555bf41b0
     #2  0x00007ffff607cccf in marshall_sec_desc (mem_ctx=<optimized out>, 
secdesc=<optimized out>, data=data@entry=0x7fffffffdb80, 
len=len@entry=0x7fffffffdb78) at ../../libcli/security/secdesc.c:241
            blob = {data = 0x7fffffffdb40 "`\333\377\377\377\177", length = 
140737352374299}
            ndr_err = <optimized out>
            __FUNCTION__ = "marshall_sec_desc"
     #3  0x00007ffff29edd94 in GPO_marshall_get_sec_desc_buf (self=<optimized 
out>, args=<optimized out>, kwds=<optimized out>) at ../../libgpo/pygpo.c:119
            gpo_ptr = <optimized out>
            status = <optimized out>
            data = 0x0
            len = 0
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=15599
    
    Signed-off-by: Andreas Schneider <a...@samba.org>
    Reviewed-by: David Mulder <dmul...@samba.org>
    (cherry picked from commit b13d4359f2f16e391763d1dc6a5718def973fabb)
    
    Autobuild-User(v4-20-test): Jule Anger <jan...@samba.org>
    Autobuild-Date(v4-20-test): Fri Mar 15 10:29:54 UTC 2024 on atb-devel-224

commit 72bd247c97da62789ab72111df11466dfb2a79fa
Author: Andreas Schneider <a...@samba.org>
Date:   Mon Mar 4 16:42:38 2024 +0100

    libgpo: Fix trailing spaces in pygpo.c
    
    Signed-off-by: Andreas Schneider <a...@samba.org>
    Reviewed-by: David Mulder <dmul...@samba.org>
    (cherry picked from commit 6fb86a0fa62d93c1c84c2000f01c381a9e8217e1)

-----------------------------------------------------------------------

Summary of changes:
 libgpo/pygpo.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)


Changeset truncated at 500 lines:

diff --git a/libgpo/pygpo.c b/libgpo/pygpo.c
index adbd5b4688d..0f7116313f2 100644
--- a/libgpo/pygpo.c
+++ b/libgpo/pygpo.c
@@ -116,6 +116,11 @@ static PyObject *GPO_marshall_get_sec_desc_buf(PyObject 
*self, PyObject *args,
        uint8_t *data = NULL;
        size_t len = 0;
 
+       if (gpo_ptr->security_descriptor == NULL) {
+               PyErr_SetString(PyExc_RuntimeError, "Uninitialized");
+               return NULL;
+       }
+
        status = marshall_sec_desc(gpo_ptr, gpo_ptr->security_descriptor,
                                   &data, &len);
        if (!NT_STATUS_IS_OK(status)) {
@@ -371,7 +376,7 @@ static int py_ads_init(ADS *self, PyObject *args, PyObject 
*kwds)
                                 workgroup,
                                 ldap_server,
                                 ADS_SASL_PLAIN);
-       
+
        return 0;
 }
 


-- 
Samba Shared Repository

Reply via email to