[PATCH] pytalloc and pidl changes for refcounting and incorrect msDS-IntID handling

Stefan Metzmacher metze at samba.org
Fri Feb 26 16:57:48 UTC 2016


Am 25.02.2016 um 02:38 schrieb Andrew Bartlett:
> On Tue, 2016-02-23 at 16:19 +1300, Andrew Bartlett wrote:
>> On Mon, 2016-02-22 at 17:54 +0100, Stefan Metzmacher wrote:
>>> Hi Andrew,
>>>  
>>> I like the typechecking on pytalloc_get_mem_ctx() and
>>> pytalloc_get_ptr(),
>>> which means this is mostly transparent, which simplifies a lot.
>>
>> Thanks.  I was worried what you might think of that.
>>
>>> I think we can even avoid having a pytalloc_get_ptr_mem_ctx()
>>> function
>>> and just let pytalloc_get_mem_ctx() return the talloc_ptr_ctx for
>>> a BaseObject.
>>
>> Done.  I've also removed an extra memory context we didn't need.
>>
>>> I've also some more comments I'll write within the next few days.
>>>
>>
>> Great.  I'm continuing to update my replMetaData-attid branch on
>> git://
>> git.catalyst.net.nz/samba.git with the patches as I improve things.
>>
>> Attached are the improved patches for pytalloc (other patches for
>> msDS-
>> IntID in the branch).
>>
>> Jelmer,
>>
>> One thing I noticed is that talloc_guide.txt and the code seem to
>> disagree on if Py_DECREF(str) is needed on the type pointer from
>> pytalloc_GetObjectType().  I've kept the behaviour consistent with
>> the
>> existing code, but it seems wrong. 
>>
>> This may be our chance to fix (and make more complex...) this code,
>> or
>> the docs.
> 
> I've updated the replMetaData-attid branch, fixing and clarifying the
> pidl changes.  There are less changes to pidl thanks to your suggestion
> to just change what pytalloc_get_mem_ctx() returns. 
> 
> I look forward to your review,

Can you have a look at the diff between
http://git.catalyst.net.nz/gw?p=samba.git;a=shortlog;h=refs/heads/replMetaData-attid
and
https://git.samba.org/?p=metze/samba/wip.git;a=shortlog;h=refs/heads/master4-attid

I think
http://git.catalyst.net.nz/gw?p=samba.git;a=commitdiff;h=01e1a173bf1383b71be08d9b1ee40ea1f8bc9ba7
can be skipped for now see
https://git.samba.org/?p=metze/samba/wip.git;a=commit;h=6a363243a79f2291a734fd1cc5b288ddc1c2425c
in order to avoid problems with backporting large patches, if split
into multiple patches it should be fine for master (only).

If you're fine with my changes, I'll review the non talloc changes and
push tomorrow.

Somehow a private autobuild (with my branch fails :-( )

[1882(19075)/1888 at 2h42m18s] samba4.blackbox.dbcheck(ad_dc_ntvfs)
UNEXPECTED(failure):
samba4.blackbox.dbcheck(ad_dc_ntvfs).dbcheck(ad_dc_ntvfs:local)
REASON: Exception: Exception: Checking 7367 objects
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00000003
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0050000d
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0009030f
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0009030e
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x000900aa
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00090094
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00090001
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x000201cc
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020172
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020119
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0002001a
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020016
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020015
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020002
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020001
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00000000
Not fixing replPropertyMetaData on
CN=DrsReplSchema-1456477112-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com

CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00000003
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x005c000d
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0009030f
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0009030e
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x000900aa
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00090094
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00090001
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x000201cc
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020172
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020119
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x0002001a
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020016
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020015
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020002
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00020001
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com:
0x00000000
Not fixing replPropertyMetaData on
CN=DrsReplSchema-1456477523-3-cls-B,CN=Schema,CN=Configuration,DC=samba,DC=example,DC=com

Bad talloc magic value - unknown value
Aborted (core dumped)


metze




-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20160226/1895e200/signature.sig>


More information about the samba-technical mailing list