summaryrefslogtreecommitdiff
path: root/source4/lib/talloc/talloc.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r18521: implement volkers suggestion for avoiding the type punning warningsAndrew Tridgell1-1/+2
(This used to be commit 9b9f058edb033c999c4430add4f05459ac43c9e2)
2007-10-10r18435: added a function talloc_move() which is like talloc_steal(), but isAndrew Tridgell1-0/+11
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-10r18129: moved the system includes into libreplace - this gives much moreAndrew Tridgell1-17/+0
isolation of our portability environment from the main code, and also simplifies the includes system (no separate #ifdef _SAMBA_BUILD for tdb. ldb etc now) (This used to be commit 77d1a468e06290aba789e2f3affc769fc5159a21)
2007-10-10r18100: actually make usage of libreplace :-)Stefan Metzmacher1-1/+1
metze (This used to be commit 357882e6ec20b559b7053a8dffb72b7dec26b82f)
2007-10-10r18027: Fix some 64-bit warningsVolker Lendecke1-1/+1
(This used to be commit cd495d89314a653b5976b1690e075fd7bac2f59b)
2007-10-10r17950: sync talloc with samba3Stefan Metzmacher1-0/+7
metze (This used to be commit 5697841e2949d2f7a053b4766c48906943a5a04e)
2007-10-10r17907: - add a generic talloc_report_depth_cb() function which takes a callbackStefan Metzmacher1-49/+80
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-3/+6
- 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-2/+10
metze (This used to be commit 7cab4285b1b61ad5cb425e42d89bcf7d645b0710)
2007-10-10r17892: fix the last talloc c++ warningStefan Metzmacher1-1/+2
metze (This used to be commit 6955ffe4544eddd9e34461f57858480b1acf49c9)
2007-10-10r17891: remove c++ warnings from tallocStefan Metzmacher1-11/+12
metze (This used to be commit fb73ce8d4364a1da3c320034d90c0556529c61c4)
2007-10-10r17578: in standalone talloc build ensure we get intptr_t if available (whichAndrew Tridgell1-0/+3
makes the discard_const stuff nicer) (This used to be commit 662f01f8ba861a5ef1d5ee724ed2b3ab9812597a)
2007-10-10r17264: - remove unused includes from tallocStefan Metzmacher1-14/+4
- check explicit check for varargs.h as fallback from stdarg.h and fail the build if both are not present metze (This used to be commit b091d182fe8f36dfb67b7ede933a963b74034d91)
2007-10-10r17176: remove off_t from talloc. size_t is large enough to holdStefan Metzmacher1-5/+5
the max amount of memory of one process metze (This used to be commit f47b7bb656c8854c16c5a28ba24d18eeb22b6e22)
2007-10-10r17062: make correct use of talloc destructors, and make the code much simplerStefan Metzmacher1-14/+12
should I merge that aslo to samba3? metze (This used to be commit c5672a54a02e3f457effd7cc693a6f6ac2dcc621)
2007-10-10r17061: - remove the currect talloc chunk from it's parent before freeing ↵Stefan Metzmacher1-5/+3
the children this fixes an endless loop bug! - reenable the test for this should I merge this to samba3? metze (This used to be commit 0559222b62930765519aaab5d33609ece29014d6)
2007-10-10r16446: talloc_set_name() allocates and can fail...Stefan Metzmacher1-6/+21
pass the error to the callers metze (This used to be commit 7aa07a1e0b2abd1a6ecd490410685d20c0201094)
2007-10-10r15856: fixed talloc_asprintf_append() on solarisAndrew Tridgell1-1/+2
(This used to be commit bba33a976b1954b5e9e557c9323afc92616439a3)
2007-10-10r15852: patch from Rusty to make talloc_set_destructor() and talloc_steal()Andrew Tridgell1-6/+8
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-10r15828: a talloc steal optimisation spotted by metzeAndrew Tridgell1-1/+1
(This used to be commit e00ff9f35eed28aeecdc779cee06b87c34d82124)
2007-10-10r15824: fixed a subtle talloc bug to do with memory context loops. When youAndrew Tridgell1-2/+34
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-10r14999: Remove more unused autoconf codeJelmer Vernooij1-10/+8
Simplify va_copy() replacement code a bit (This used to be commit a5c87360a7f14a90b831ea372277f4f89ee4c5f1)
2007-10-10r14288: - make the snprintf call in talloc portable to older solaris boxesAndrew Tridgell1-2/+8
- fixed an error found sing the beam analyser (This used to be commit bc45451ddd6eceb9bf1ca02f84932759d99a1744)
2007-10-10r14131: Fix Coverity bug # 127Volker Lendecke1-1/+3
(This used to be commit 4d0aa6f525c4756ca6942439468b484e3ca4b2fa)
2007-10-10r13400: Only return NULL from talloc_asprintf if vsnprintf returns anJames Peach1-1/+1
error (ie. zero is not an error). (This used to be commit 1ab4674196b9df0b2b7b6eb4991358cc2f86c0d9)
2007-10-10r13397: Propagate the error return from vsnprintf to trap the case whereJames Peach1-2/+12
we aren't linked against a C99 vsnprintf. (This used to be commit 23782f899aaa5fe488d86d5e67e91be99ff7a146)
2007-10-10r12633: expose talloc_vasprintf_append()Andrew Tridgell1-4/+1
(This used to be commit 7a0e7074f6d3d38ce92f2b617549d5dbbaf968ef)
2007-10-10r11983: make talloc LGPL. This makes more sense given that ldb depends onAndrew Tridgell1-11/+15
talloc, and ldb is now LGPL (This used to be commit 5bdd50fa38b1be28cf7bcddc561c743437e70cae)
2007-10-10r10726: fix to talloc_parent() from Michael O'BrienAndrew Tridgell1-1/+1
(This used to be commit f31a2376f3fef1cc2b40b37fb4d94a4b67eec6d4)
2007-10-10r8127: fixed code in function errorAndrew Tridgell1-2/+1
(This used to be commit 46632e2048f0b87de351cd3f26229cfc4b3384ca)
2007-10-10r8126: - moved to 16 byte alignment for talloc. This is in response to a bugAndrew Tridgell1-50/+53
report from robert collins. - updated talloc guide to reflect the fact that over the last few months talloc overhead compared to malloc has dropped, probably due to a bunch of small changes. It now costs about 4% more than malloc on my box (This used to be commit 689a9ccf91f9de560a500787d85321abe096b948)
2007-10-10r8032: added loop detection into talloc. Robert Collins found a way to make aAndrew Tridgell1-16/+46
memory loop with talloc_unlink(), so now we detect it and handle it (This used to be commit 563058e78b8c74e821fabf6a43fa861c1ad09944)
2007-10-10r7936: new ldb_dn_explode and ldb_dn_casefold functions and coSimo Sorce1-0/+22
(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-7/+26
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-10r7780: fixed a bug in talloc_find_parent_byname()Andrew Tridgell1-1/+1
(This used to be commit ee3fe42fb16821eedd564201d953042190f7826f)
2007-10-10r7778: added talloc_find_parent_bytype() and talloc_find_parent_byname()Andrew Tridgell1-0/+24
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-10r6845: make the talloc header align to 40 bytes, which costs us an extra 4Andrew Tridgell1-8/+11
bytes per allocation, but makes it much more portable (This used to be commit 257027a571da254c16b0b456cb1cbec284d7fda0)
2007-10-10r6831: talloc now requires config.h (this fixes ldb build)Andrew Tridgell1-2/+0
(This used to be commit aac86583a9bff7d882ed56633126a1d9f27eea6a)
2007-10-10r6828: More portability fixesJelmer Vernooij1-0/+9
(This used to be commit f46c532883e18b8780ff73d3ac0899690eeab3f4)
2007-10-10r6812: more talloc portability tweaksAndrew Tridgell1-0/+1
(This used to be commit 450ac2e4dea25910ee5384747bdb6ad7323e967d)
2007-10-10r6808: - test for gcov not neededAndrew Tridgell1-13/+0
- samba malloc wrapper avoidance not needed now we don't use includes.h - make testsuite work when BOOL, True, False already defined (This used to be commit c8a274c8735957a8a8dd21421abd65a8a1af20f7)
2007-10-10r6804: Add config.h for talloc (and use it)Jelmer Vernooij1-5/+13
(This used to be commit c2ce09d38003fd43212de9cd08e4a781cc2aff88)
2007-10-10r6741: prevent talloc_strndup() from reading one byte past the end of a buffer,Andrew Tridgell1-1/+1
giving valgrind errors (This used to be commit 7af0c547e0c0da3bc78a1ee6c2ab29114d8625cc)
2007-10-10r6660: Sorry for the spam... I think now I've got a version that should ↵Volker Lendecke1-1/+10
compile on trunk, 3_0 and 4_0. Volker (This used to be commit 777c489cad610fef140ec80d5644111b04a314c1)
2007-10-10r6650: keep style consistentSimo Sorce1-1/+2
(This used to be commit 34671674ee326ea835408f8c1fdb105ea50ccc55)
2007-10-10r6645: Add talloc_get_size() function.Simo Sorce1-0/+10
Sometimes it is usefull to know this data. Simo. (This used to be commit df401847827ef660d8b9d55af9b27bb85bad6b5f)
2007-10-10r6513: Commit talloc_free_children.Volker Lendecke1-20/+37
Volker (This used to be commit 9fa26d2c971a7baee64d8938e31909cac80f0e5a)
2007-10-10r6075: added talloc_enable_null_tracking() (asked for by lifeless)Andrew Tridgell1-2/+12
(This used to be commit 40b8ee186af3e7f771c680dbbb03fdcf559bf103)
2007-10-10r6033: Patch from 'lifeless' to clarify behaviour with NULL pointers.Andrew Bartlett1-1/+2
Andrew Bartlett (This used to be commit 48c518796797f021c9c7f319ca8cd0a0c185f64c)
2007-10-10r5938: - allow NULL string argument to talloc_vasprintf_append()Andrew Tridgell1-1/+9
- default to using va_copy(), thus assuming a modern libc (This used to be commit 3060b26c9e745330682f6209d97e723113b65b56)