summaryrefslogtreecommitdiff
path: root/source4/lib/talloc/talloc.h
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r20193: - let talloc_parent_chunk() handle a NULL pointerStefan Metzmacher1-0/+1
- use talloc_parent_chunk() in talloc_parent_name() - add prototype of talloc_parent_name() metze (This used to be commit 85fc18f047cd2132d0c455f739ee76ce5005d7ed)
2007-10-10r18521: implement volkers suggestion for avoiding the type punning warningsAndrew Tridgell1-2/+2
(This used to be commit 9b9f058edb033c999c4430add4f05459ac43c9e2)
2007-10-10r18439: 2nd try at a talloc_move() api. This type with the ** ptr interfaceAndrew Tridgell1-1/+1
exposed. Unfortunately this generates a large number of type punning warnings. We'll have to find some magic to hide those. (This used to be commit 254cbf09dee5a1e20c47e47a298f1a8d172b41b9)
2007-10-10r18435: added a function talloc_move() which is like talloc_steal(), but isAndrew Tridgell1-2/+4
meant for moving pointers between structures. The difference is that talloc_move() will zero the source pointer, thus ensuring you don't reference the pointer in the old context. talloc_move() is appropriate in some, but not all cases where we use talloc_steal() now. The interface came out of a discussion with Jeremy. (This used to be commit 200756017e1867faa207703eddc00a75ae4527df)
2007-10-10r17907: - add a generic talloc_report_depth_cb() function which takes a callbackStefan Metzmacher1-3/+10
to do the actual report. - make the talloc_report_depth_file() a wrapper of it - and talloc_report() and talloc_report_full() are wrapper of talloc_report_depth_file() metze (This used to be commit b199557b358e6216d89d233513079fcd56b307aa)
2007-10-10r17895: - talloc_increase_ref_count() can failStefan Metzmacher1-2/+4
- make talloc_reference() typesafe when gcc >= 3 is used metze (This used to be commit 933d1b47ad614d02cc02b602e704948b342febdb)
2007-10-10r17893: add a function to disable the null_contextStefan Metzmacher1-0/+1
metze (This used to be commit 7cab4285b1b61ad5cb425e42d89bcf7d645b0710)
2007-10-10r17891: remove c++ warnings from tallocStefan Metzmacher1-2/+2
metze (This used to be commit fb73ce8d4364a1da3c320034d90c0556529c61c4)
2007-10-10r17886: add talloc_ptrtype() and talloc_array_ptrtype(),Stefan Metzmacher1-0/+2
see the manpage what they do:-) metze (This used to be commit bfca83c91e47e9017474809cd7bc8b2e6e20416a)
2007-10-10r17885: use _TALLOC_TYPEPF() consitentlyStefan Metzmacher1-3/+2
metze (This used to be commit 155cd6b88283b85c53c7ec65efcf431da7b649ac)
2007-10-10r17645: gcc 4.1.x has started producing "value computed is not used" warningsAndrew Tridgell1-1/+4
in very annoying ways for talloc_steal. This rather strange looking cpp approach avoids these warnings. It's really a problem in gcc, but better to do this than put up with the huge flood of warnings. (This used to be commit 8236a0ac5e80c30e52fccc0ef41a6c808ea43420)
2007-10-10r17263: export talloc_free_children()Stefan Metzmacher1-0/+1
metze (This used to be commit 195754b169f68399008dda074181a2a16e4ecce5)
2007-10-10r17176: remove off_t from talloc. size_t is large enough to holdStefan Metzmacher1-2/+2
the max amount of memory of one process metze (This used to be commit f47b7bb656c8854c16c5a28ba24d18eeb22b6e22)
2007-10-10r16922: move some macros out of talloc.h as the don't belong to tallocStefan Metzmacher1-8/+0
metze (This used to be commit 4c68e315e2288eef97527911daf18622a994ac31)
2007-10-10r16446: talloc_set_name() allocates and can fail...Stefan Metzmacher1-1/+1
pass the error to the callers metze (This used to be commit 7aa07a1e0b2abd1a6ecd490410685d20c0201094)
2007-10-10r15852: patch from Rusty to make talloc_set_destructor() and talloc_steal()Andrew Tridgell1-16/+31
type safe. This only works on recent gcc versions. With other compilers it reverts to a non-typesafe cast The patch also ensures that talloc_free() does not change error on systems where free() can change errno (This used to be commit babbff5f777642f559747f6d0697bc7c3a5e798d)
2007-10-10r15824: fixed a subtle talloc bug to do with memory context loops. When youAndrew Tridgell1-0/+1
have a structure that references one of its parents, and a parent of that parent is freed, then the whole structure should be freed, not just the reference. this was found by the change notify code, as a side effect of fixing the memory leak yesterday (This used to be commit 70531dcaeeb9314d410baa0d285df6a265311541)
2007-10-10r12633: expose talloc_vasprintf_append()Andrew Tridgell1-0/+1
(This used to be commit 7a0e7074f6d3d38ce92f2b617549d5dbbaf968ef)
2007-10-10r11984: LGPL on header and testsuite as wellAndrew Tridgell1-11/+15
(This used to be commit ed90975bf50644f00da681eb7cc41123abc60f81)
2007-10-10r7936: new ldb_dn_explode and ldb_dn_casefold functions and coSimo Sorce1-0/+1
(This used to be commit 7ccf21ab4eeb9821e457308a239f2103a106fb12)
2007-10-10r7781: finding the parent of a talloc ptr is trickier than it looks due to ↵Andrew Tridgell1-0/+1
the two-way tree nature of the data structure. I think I've finally got it right also added talloc_show_parents() for debugging (This used to be commit 5760ed20eed509b0b6e09e78c942dd0f70350fa9)
2007-10-10r7778: added talloc_find_parent_bytype() and talloc_find_parent_byname()Andrew Tridgell1-0/+3
These provide a way to find a parent of a ptr that is of a given type. I will be using this to find the event context in smbd, relying on the fact that everything is a child of the top level event context. I did look at the alternatives, and found that passing the event context to just about every call in smbd was getting way too complex (we need to get it to anything that can do a ldb operation, as that can invoke ldap). So this method avoids a global, and seems to work nicely (This used to be commit bdb55c7a10a516b75652065e14f5acd09d24ab35)
2007-10-10r6645: Add talloc_get_size() function.Simo Sorce1-0/+1
Sometimes it is usefull to know this data. Simo. (This used to be commit df401847827ef660d8b9d55af9b27bb85bad6b5f)
2007-10-10r6075: added talloc_enable_null_tracking() (asked for by lifeless)Andrew Tridgell1-0/+1
(This used to be commit 40b8ee186af3e7f771c680dbbb03fdcf559bf103)
2007-10-10r5937: - performance improvement to talloc_asprintf_append()Andrew Tridgell1-0/+8
- allow standalone talloc to use gcc printf attributes (This used to be commit e25aa54e962796e6e7385afed57aa287ef6f869d)
2007-10-10r4790: added type checking helper macros in talloc. These take advantage ofAndrew Tridgell1-5/+9
the type names that talloc already keeps around for pointers, and allows the user to type check void* private pointers. It can also be used to implement polymorphism in C, as I'm sure someone would have pointed out to me sooner or later :-) (This used to be commit c283e1a3efac3a92e29a35856e20eb61ef4c221e)
2007-10-10r4711: - deprecate talloc_destroy()Andrew Tridgell1-3/+2
- expanded the talloc_realloc() test a little (I was concerned about a possible bug, which turned out to be an illusion) - don't enable gcov by default in Makefile.talloc (This used to be commit 4ec47cc1083c4cdb780e548177631c5914bf677a)
2007-10-10r4689: - make talloc_report_depth() publicStefan Metzmacher1-0/+2
- add talloc_parent() to return the parent context of a pointer these are very use full for debuging metze (This used to be commit 9b9501bc03ef8d4b53049f6b3531d06ed7ef7f89)
2007-10-10r4687: use struct type and location for easier findingStefan Metzmacher1-1/+1
metze (This used to be commit a88aac7a397972c52ca2fb192b58f2a172630a6e)
2007-10-10r4609: add a usefull data_blob_dup_talloc() macroStefan Metzmacher1-0/+1
metze (This used to be commit 11e006df1689d4b4b202bca640106fd789495284)
2007-10-10r4591: - converted the other _p talloc functions to not need _pAndrew Tridgell1-10/+27
- added #if TALLOC_DEPRECATED around the _p functions - fixes the code that broke from the above while doing this I fixed quite a number of places that were incorrectly using the non type-safe talloc functions to use the type safe ones. Some were even doing multiplies for array allocation, which is potentially unsafe. (This used to be commit 6e7754abd0c225527fb38363996a6e241b87b37e)
2007-10-10r4550: talloc() is now typesafe. It is exactly equivalent to the old ↵Andrew Tridgell1-2/+2
talloc_p() macro. Use talloc_size() if you want the old behaviour. I have kept talloc_p() as an alias for now. Once we change all calls to be plain talloc() then we can remove it. (This used to be commit 2011bbeb841fd6bfccf3d44a49f79203f7f55baa)
2007-10-10r4549: got rid of a lot more uses of plain talloc(), instead usingAndrew Tridgell1-0/+1
talloc_size() or talloc_array_p() where appropriate. also fixed a memory leak in pvfs_copy_file() (failed to free a memory context) (This used to be commit 89b74b53546e1570b11b3702f40bee58aed8c503)
2007-10-10r4547: - added talloc_new(ctx) macro that is a neater form of the common ↵Andrew Tridgell1-0/+1
talloc(ctx, 0) call. - cleaned up some talloc usage in various files I'd like to get to the point that we have no calls to talloc(), at which point we will rename talloc_p() to talloc(), to encourage everyone to use the typesafe functions. (This used to be commit e6c81d7c9f8a6938947d3c1c8a971a0d6d50b67a)
2007-10-10r4479: added the function talloc_autofree_context() which returns a talloc ↵Andrew Tridgell1-0/+1
context that will automatically be freed on program exit. This is useful for reducing clutter in leak reports (This used to be commit cf73dda652e0a121901f22771104be6751c0fcb9)
2007-10-10r4473: - moved talloc into its own lib/talloc/ areaAndrew Tridgell1-0/+96
- added gcov flags to Makefile.talloc - expanded talloc testsuite to add a test for realloc with a child ptr - fixed a bug in talloc_realloc() with realloc of a ptr that has child ptrs (This used to be commit 98b5f73c1ba34d7576c5995069b485c1c5ede324)