summaryrefslogtreecommitdiff
path: root/source4
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r4951: some of the code dealing with libcli was getting too complex trying toAndrew Tridgell9-44/+41
handle the inverted memory hierarchy that a normal session establishment gave. The inverted hierarchy came from that fact that you first establish a socket, then a transport, then a session and finally a tree. That leads to the socket being at the top of the memory hierarchy and the tree at the bottom, which makes no sense from the users point of view, as they want to be able to free the tree and have everything disappear. The core problem was that the libcli interface didn't distinguish between establishing a primary context and a secondary context. If you establish a 2nd session on a transport then you want the transport to be referenced by the session, whereas if you establish a primary session then you want the transport to be a child of the session. To fix this I have added "parent_ctx" and "primary" arguments to the libcli intialisation functions. This makes using the library much easier, and gives us a memory hierarchy that makes much more sense. I was prompted to do this by a bug in the cifs backend, which was caused by the socket not being properly torn down on a disconnect due to the inverted memory hierarchy. (This used to be commit 5e8fd5f70178992e249805c2e1ddafaf6840739b)
2007-10-10r4950: removed some excessive debugging messagesAndrew Tridgell1-8/+0
(This used to be commit 4a351901aa49090700d89274559d6dda76f06b7d)
2007-10-10r4949: First version of a fetchfile composite function which connects to a ↵Volker Lendecke5-1/+308
server and loads a file. Needs a smb url parsing wrapper. Volker (This used to be commit fa435bf7c878d4a5beb6afb2ed6e2990abc11e82)
2007-10-10r4948: Typo fixes in comments.Rafal Szczesniak1-2/+2
rafal (This used to be commit 97d40f1603eeed1b5ff3f2c7d668858fef20f130)
2007-10-10r4945: the te element isn't needed any moreAndrew Tridgell1-5/+1
In general, now that events are children of the structure they are handling events for, the caller only needs to keep the event handle around if it plans on changing the event flags later (This used to be commit 8c8955155476827408c107af38089c8320631526)
2007-10-10r4944: every event_add_*() caller was having to call talloc_steal() to takeAndrew Tridgell10-37/+33
control of the event, so instead build that into the function. If you pass NULL as mem_ctx then it leaves it as a child of the events structure. (This used to be commit 7f981b9ed96f39027cbfd500f41e0c2be64cbb50)
2007-10-10r4943: Smplified the events handling code a lot. The first source ofAndrew Tridgell10-158/+113
complexity was that events didn't automatically cleanup themselves. This was because the events code was written before we had talloc destructors, so you needed to call event_remove_XX() to clean the event out of the event lists from every piece of code that used events. I have now added automatic event destructors, which in turn allowed me to simplify a lot of the calling code. The 2nd source of complexity was caused by the ref_count, which was needed to cope with event handlers destroying events while handling them, which meant the linked lists became invalid, so the ref_count ws used to mark events for later destruction. The new system is much simpler. I now have a ev->destruction_count, which is incremented in all event destructors. The event dispatch code checks for changes to this and handles it. (This used to be commit a3c7417cfeab429ffb22d5546b205818f531a7b4)
2007-10-10r4942: converted the cifs backend to not use event_context_merge(). Instead,Andrew Tridgell1-16/+21
is supplies the server event context during the connect. (This used to be commit 133e67bb1fa661b0e0d340091be4160f9af04fe3)
2007-10-10r4941: - all needed data is now in sam.ldb and hacked.ldb is not needed ↵Stefan Metzmacher2-48/+42
anymore by the hacked ldap backend - readd the schema naming context container object as it's needed for a w2k3 dc join metze (This used to be commit c583f806231652cce9879e9fc4237a5ab0774346)
2007-10-10r4940: Add a variable to hold a list of typedefs for which we shouldn't generateTim Potter1-1/+20
a dissector for. A hand written dissector needs to be added to eparser.c for the plugin to link. (This used to be commit d4f7f6b0b41cb572320a5aeaf771c5af2b7bf13d)
2007-10-10r4939: make a few more private pointers type safe (this might help abartletAndrew Tridgell1-3/+6
track down a bug he just told me about) (This used to be commit fb326cbb32ef7eebb7073777d834d6bea25069a7)
2007-10-10r4938: allow the caller to supply an existing event_context if they want toAndrew Tridgell4-8/+15
in smb_composite_connect_send(). This makes doing parallel calls much easier. (This used to be commit 442308970c123b9fb25615673049e1c1c234a0b9)
2007-10-10r4937: simplify the connect code in the same wayAndrew Tridgell1-15/+12
(This used to be commit 347dfa47249d55c61e1e7c82d10444a71aca8a85)
2007-10-10r4936: moved to a convention where the completion function is only called inAndrew Tridgell2-24/+18
one place. This makes the code more robust, and simpler (it would have prevented the error that volker found). (This used to be commit 420b53091ee784d7891fb62d48e2f5a225b4dbf8)
2007-10-10r4935: fixed a bug where "c->status = xxx_handler(x);" could write to c afterAndrew Tridgell3-15/+22
it is freed. The problem is that the handler might complete the request, and called the c->async.fn() async handler. That handler might free the request handle. (This used to be commit c4faceadc74e0849f6197ccbec9952f6c94f6176)
2007-10-10r4930: Update my copyright.Tim Potter1-1/+1
(This used to be commit 362151788bed06d934f111459abe7f6491362906)
2007-10-10r4927: parse the NBT session request in the smb server. This gets rid of thatAndrew Tridgell3-8/+57
annoying "not parsing session request" message on each SMB connection (This used to be commit b06b8dd2f4f4fea750b05fd29d68372828159f16)
2007-10-10r4924: continue the effort to simplify and generalise the compositeAndrew Tridgell5-22/+22
interface. This patch removes the "stage" variable, which is really better suited to the backend state structures (This used to be commit 39da684ea8bc72d7a4a12c00eaad56b4f32890a9)
2007-10-10r4923: Avoid using krb5-config in the path if a krb5 prefix was already set.Andrew Bartlett1-19/+21
Andrew Bartlett (This used to be commit ff8298bb90b78dc52c11e2cdecf5041b9e243f35)
2007-10-10r4922: fixed an infinite loop in the name resolve code when handling a methodAndrew Tridgell1-3/+1
in smb.conf that isn't implemented in the library (This used to be commit dd5b43ed37b37feec4708f8f13033b42eb6a838c)
2007-10-10r4919: if a caller doesn't provide an event context to the resolver library,Andrew Tridgell1-1/+6
then create one. This fixes a crash in the RAW-NEGNOWAIT test for 'host' resolution. (This used to be commit 3268d523cc381b9b3077f794bb53daf0865d139c)
2007-10-10r4916: added "host" name resolution using fork() per gethostbyname()Andrew Tridgell3-17/+270
comments welcome, but please think about the alternatives first :-) (This used to be commit 3d40b479907226be349137117e0d2bd718efa1a8)
2007-10-10r4915: free temp context _before_ the async callback, as the async callback ↵Andrew Tridgell1-1/+1
might destroy our top level context leaving the tmp context freed (so a double free) (This used to be commit b20c0561b8ec3ec7010f846be7a39165783e15c2)
2007-10-10r4914: Fill in the realm for the self-join.Andrew Bartlett1-0/+1
Andrew Bartlett (This used to be commit bc901ecfb4babe72858185e79b91f6a53c04b71f)
2007-10-10r4911: make sure we fill in the transport called name on port 445 as wellAndrew Tridgell1-6/+9
(thanks to abartlet for spotting this bug) (This used to be commit 8b653f12f21e7a8eee8e60cefb193505c2df7f8f)
2007-10-10r4909: fixed name_trn_id generation (thanks to metze for spotting the bug!)Andrew Tridgell1-1/+3
(This used to be commit 9d2d16ce5fd57cad01ddaf1112beed916cc2088d)
2007-10-10r4901: a bit more info on nbt packets under high debug levelAndrew Tridgell1-2/+5
(This used to be commit 9a34af29388d8ca837c670d054a76d1f75098cbd)
2007-10-10r4900: build fix for IRIX 6.5Andrew Tridgell2-5/+5
(This used to be commit f6ff9e6f39efdb312384ebb651b8e0f01e9e8df1)
2007-10-10r4899: fixed buildAndrew Tridgell1-5/+5
(This used to be commit 852f1e73b4b4241a61372279318c23369488d3bc)
2007-10-10r4898: - removed the unused wins_srv_*() codeAndrew Tridgell11-506/+375
- expanded the generic async name resolver to try multiple methods - added wins resolutions to the list of methods tried - fixed up the random trn id generation to use the good random generator (This used to be commit 266fd2751c01808e5a18d4094032af50554ceb7a)
2007-10-10r4897: Unbreak the LDAP server. Somehow the generic service structuresAndrew Bartlett1-7/+8
(which seem just a little too complex) changed, but this code was not updated or tested. Also clarify the existing code, by not reusing variables. Andrew Bartlett (This used to be commit eb46adade4a0b9f0977479eb767c0bc7936a9585)
2007-10-10r4896: make sure the event context doesn't go away while waiting for event ↵Andrew Tridgell1-1/+1
completion (This used to be commit c1063919c069b0b36dd3da6dc6853236629804e3)
2007-10-10r4895: I missed this in my previous 'use secrets.ldb' commit.Andrew Bartlett1-0/+2
Andrew Bartlett (This used to be commit 53b98c674b28a85eec9748a079c950bd7fa88384)
2007-10-10r4894: namecache.c is not used any more eitherAndrew Tridgell1-247/+0
(This used to be commit 24927e69d824a1f3c01b2f63876afdfc6064d5ac)
2007-10-10r4893: Move to using secrets.ldb for the Kerberos verify, instead ofAndrew Bartlett1-12/+33
secrets.tdb from Samba3. Andrew Bartlett (This used to be commit 21bfda2a0d1c8373f8800269ed9b982e1b9a19e5)
2007-10-10r4892: we don't need nameserv.h any moreAndrew Tridgell2-659/+0
(This used to be commit 1c83c80ef2b7e5f9eb5cd2242e37d136aed181b8)
2007-10-10r4891: - added a generic resolve_name() async interface in libcli/resolve/,Andrew Tridgell20-2768/+452
which will eventually try all resolution methods setup in smb.conf - only resolution backend at the moment is bcast, which does a parallel broadcast to all configured network interfaces, and takes the first reply that comes in (this nicely demonstrates how to do parallel requests using the async APIs) - converted all the existing code to use the new resolve_name() api - removed all the old nmb code (yay!) (This used to be commit 239c310f255e43dd2d1c2433f666c9faaacbdce3)
2007-10-10r4890: Try to cope with mechanism mismatch in the client speaks first versionAndrew Bartlett1-7/+98
of the SPNEGO state-machine. (Such as on LDAP and HTTP) Andrew Bartlett (This used to be commit c1cae6b3b1efe109a09e449ed2e09983431eac7e)
2007-10-10r4889: make sure ndr print flags are initialised in ndrdumpAndrew Tridgell1-1/+2
(This used to be commit c5c65ad8fb21e515535286c52847f3eb990f8036)
2007-10-10r4888: use the neater calling conventionAndrew Tridgell1-31/+8
(This used to be commit d93b6a5b8e9e4bf86a96262db21aa3fc1490e91d)
2007-10-10r4887: removed a bogus castAndrew Tridgell1-1/+1
(This used to be commit a034556faa5d15fee44a58be3aea8aee8ffae3c8)
2007-10-10r4886: fixed two places where we process the send side of a socket after theAndrew Tridgell2-0/+2
recv side in the same event. That's a bad idea, as the first callback could decide to destroy the socket. (This used to be commit bf74ea34fc0e3c31e220c8f5a9217c95f3ca1d52)
2007-10-10r4885: added a new NBT client library. Features include:Andrew Tridgell12-14/+1269
- structures defined using IDL in nbt.idl - build around our events structure, and talloc - fully async - supports all NBT packet fields as per rfc1002 - easy interfaces for name query and status For the moment there are just a couple of test functions in namequery.c, test_name_query() and test_name_status(). These will be removed when we hook the new library into libcli/ fully The new library will also be a fairly good basis for a nbt server. Although it can't be a server as-is, I wrote it with the needs of a server in mind (for example, extremely scalable idtree based packet handling) (This used to be commit ae7e625bfa4b4a3ee32c64566064b6a4c84ee4b9)
2007-10-10r4884: - 2nd part of support ndr_size_ generation on unions as well as ↵Andrew Tridgell4-426/+514
structures - added "nopull" and "nopush" flags, to allow for externally written parsers for sub-structures (This used to be commit f65f239978425de795a0e188aaad3d5d1167da32)
2007-10-10r4883: support ndr_size_ generation on unions as well as structuresAndrew Tridgell1-1/+6
(This used to be commit 852ad354b481f130f80213f2924ad44d10340b21)
2007-10-10r4865: Fix up subtree name when dissecting unions. E.g in LSA, The subtreeTim Potter1-7/+23
used to be called something like "Level, R->out.info" but now is called "Lsa PolicyInformation". (This used to be commit be2bb36856bee1c2882e063beb7c04ac5e5889de)
2007-10-10r4863: schema_find_attribute() should be staticAndrew Tridgell1-1/+1
(This used to be commit e7262dccce1ccc563fad48023c733c1d13929b4b)
2007-10-10r4862: - better structure schema testsSimo Sorce10-31/+54
- fix check for deletion of required attributes on modify removed by mistake with the previous commits (This used to be commit 0315159daf157b64ef3452372dd74199600e24b8)
2007-10-10r4859: changed a numbe rof things:Simo Sorce1-244/+150
- Try to no tcopy memory if not necessary - let the searches hang around until we finish the operation - greatly simplify the modify operation still todo: - check attributes syntax - check objectclasses type, we cannot allow to add a new structural objectclass to an exixting entry unless the existing one is a parent - more tests (This used to be commit c6257379e094881987cd11e05502129b2ce1c5a0)
2007-10-10r4858: a better fix for alignment of enumerated types (I'm not even sure whyAndrew Tridgell1-4/+4
the last fix worked at all) (This used to be commit 99cef2e5a0412ede455cb1579541550efa49502a)