1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00
Commit Graph

14956 Commits

Author SHA1 Message Date
Stefan Metzmacher
c713b58a00 pidl/NDR: fix handling of multilevel pointers in function elements
The 2nd or higher level of wire pointers needs to be marked as deferred.

metze
(This used to be commit d7970d7032)
2008-02-07 08:33:18 +01:00
Stefan Metzmacher
1ea5b06307 pidl: get the pointer types correct when an element has multiple pointers
Only the first level gets the pointer type from the
pointer property, the others get them from
the pointer_default() interface property

see http://msdn2.microsoft.com/en-us/library/aa378984(VS.85).aspx
(Here they talk about the rightmost pointer, but testing shows
they mean the leftmost pointer.)

metze
(This used to be commit aa8518521b)
2008-02-07 08:33:18 +01:00
Stefan Metzmacher
c6a6fa1841 win32-tests: add a very usefull w32 programm to explore midl features
You have to define idl, call the client function
and add a server implementation.

Then you need to compile midltests.exe
and run it, it will dump the generated NDR on the
screen.

metze
(This used to be commit dc15c88335)
2008-02-06 16:34:36 +01:00
Stefan Metzmacher
3a0cfad223 prefork: also reload stuff in the client processes
metze
(This used to be commit 36012c386b)
2008-02-06 14:44:20 +01:00
Andrew Bartlett
07c8cdec47 Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit 594ff92329)
2008-02-06 16:14:09 +11:00
Kai Blin
c9ea65e4ce sidmap: Some source code cleanups.
(This used to be commit 16466b543b)
2008-02-05 11:42:39 +01:00
Andrew Bartlett
24d0587752 Clarify nomaclature of socket names in process_single and process_prefork
Fix talloc_steal in both cases to steal connected socket (from accept)
onto it's private structure, rather than stealing the bound socket.

Remove termination code from the prefork modal, we want the process to
still stay around, to serve future clients.

Andrew Bartlett and David Disseldorp
(This used to be commit 07590d893e)
2008-02-05 14:51:01 +11:00
Andrew Bartlett
c46b8708f4 Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit 7fc3669b9d)
2008-02-05 09:16:37 +11:00
Stefan Metzmacher
31fac9d66b pidl: remove 'pointer_default_top()' support
metze
(This used to be commit 145d6c8ea0)
2008-02-04 18:37:09 +01:00
Stefan Metzmacher
569bd9222d spoolss.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit c472935c98)
2008-02-04 18:37:08 +01:00
Stefan Metzmacher
81b17623f2 samr.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit 14ee13c1fe)
2008-02-04 18:37:08 +01:00
Stefan Metzmacher
7406c9b903 netlogon.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit e4b12aa9a4)
2008-02-04 18:37:08 +01:00
Stefan Metzmacher
6512ad57f3 winreg.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit f195093a86)
2008-02-04 18:37:08 +01:00
Stefan Metzmacher
10f6ff352c svcctl.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit 7561e8fa51)
2008-02-04 18:37:08 +01:00
Stefan Metzmacher
b6c3e58a38 wkssvc.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit f2227b3bb8)
2008-02-04 18:37:07 +01:00
Stefan Metzmacher
033e697c9e srvsvc.idl: don't use pointer_default_top() and specify "unique" explizit
Note: this doesn't change the generated output!

metze
(This used to be commit 6d20a2f3f9)
2008-02-04 18:37:07 +01:00
Andrew Bartlett
7e15e09f67 Fix a few more breakages from our recent changes to the server_id
structure.  The BASE-TORTURE test found this problem - caused because
the messaging path was not unique.

If we didn't use a macro for cluster_id_equal(), we could make it
opaque, and avoid this...

Andrew Bartlett
(This used to be commit c3387545c5)
2008-02-04 23:04:35 +11:00
Andrew Bartlett
0f8eeb81ec Remove useless layer of indirection, where every service called
task_service_init() manually.  Now this is called from service.c for
all services.

Andrew Bartlett
(This used to be commit 9c9a4731ca)
2008-02-04 21:58:29 +11:00
Andrew Bartlett
b3c5fbec47 Remaining changes to implement the prefork process model
To use, run 'smbd -M prefork'

By default, only the smb service is preforked.  4 children are
created, and all listen for new connections.  The Linux Kernel 'wake
one' behaviour should ensure that only one is given the oportunity to
accept.  We need to look into the ideal number of worker children, as
well as load balancing behaviours.

To change, set:

prefork children : smb = 6

valid service names (smb in this example) match those in 'server services'.

Andrew Bartlett and David Disseldorp
(This used to be commit 35313c0aa3)
2008-02-04 17:59:16 +11:00
Andrew Bartlett
3d5594e74d Rework process_single.c to take advantage of cluster_id() now taking an additional argument.
Andrew Bartlett and David Disseldorp
(This used to be commit c961e7d74e)
2008-02-04 17:53:01 +11:00
Andrew Bartlett
77f71c1b65 Rework cluster_id() to take an additional argument, as we need
<node>.<pid>.<fd> to be unique in a prefork process environment.

Andrew Bartlett and David Disseldorp
(This used to be commit 931994a7f1)
2008-02-04 17:51:38 +11:00
Andrew Bartlett
23d681caf9 Rework service init functions to pass down service name. This is
needed to change prefork behaviour based on what service is being
started.

Andrew Bartlett and David Disseldorp
(This used to be commit 0d830580e3)
2008-02-04 17:48:51 +11:00
Andrew Bartlett
cbca41597e Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit 377a7c633d)
2008-02-04 09:56:24 +11:00
Stefan Metzmacher
c3008e086b pidl/Samba4::NDR::Parser: correctly get the name of an array element
When we have "*r->out.ous"
(char ***ous, a pointer to a pointer to an array of pointers).
we need to use "(*r->out.ous)[3]" to access the 3rd
element of the array "*r->out.ous[3]" was generated before,
but that's the same as "*(r->out.ous[3])" which would mean
the array would apply to a different level.

This patch prepares support for:

[out,ref,size_is(,num)] [string,charset(UTF16)] uint16 ***names;

It means a [ref] pointer to a [unique] pointer to an array
of [unique] pointers which point to an UTF16 string.

metze
(This used to be commit ec0ee2aa5f)
2008-02-02 11:16:09 +01:00
Stefan Metzmacher
b3d4f22b30 pidl/Samba4::NDR::Parser: fix $var_name for arrays of scalar reference types
uint32 num;
nstring strings[num];

this should use 'r->strings' instead of
'*r->strings' as the pointer to the array.

metze
(This used to be commit 7c7acae817)
2008-02-02 11:16:01 +01:00
Stefan Metzmacher
9475a76afc pidl/Samba4::NDR::Parser: move logic for extra get_pointer_of() into a function
metze
(This used to be commit 26d7f5bf96)
2008-02-02 11:15:52 +01:00
Stefan Metzmacher
e22c627ea1 pidl: revert changes it didn't want to push...sorry!
8ebf16c074 Works!!!...pidl/Samba4::NDR::Parser: fix support for embedded "ref" pointers
6fcf2456d0 WORKS!!!...pidl/NDR: fix handling of multilevel pointers in function elements
0569139ca2 LOOKS OK... pidl: get the pointer types correct when an element has multiple pointe
rs
13afc89a87 CHECKED... pidl/Samba4::NDR::Parser: correctly get the name of an array element
29c104944b CHECKED... TODO:MSG pidl/Samba4::NDR::Parser: fix ...
3369015f5d CHECKED... pidl/Samba4::NDR::Parser: move logic for extra get_pointer_of() into a f
unction

metze
(This used to be commit 0bcc8e53d1)
2008-02-02 11:13:03 +01:00
Stefan Metzmacher
4117839d77 Works!!!...pidl/Samba4::NDR::Parser: fix support for embedded "ref" pointers
The memory allocation of embedded "ref" pointers needs to be the
same as for all other embedded pointers.

metze
(This used to be commit 8ebf16c074)
2008-02-01 23:21:10 +01:00
Stefan Metzmacher
2670c95446 WORKS!!!...pidl/NDR: fix handling of multilevel pointers in function elements
The 2nd or higher level of wire pointers needs to be marked as deferred.

metze
(This used to be commit 6fcf2456d0)
2008-02-01 23:15:16 +01:00
Stefan Metzmacher
19898379bd LOOKS OK... pidl: get the pointer types correct when an element has multiple pointers
Only the first level gets the pointer type from the
pointer property, the others get them from
the pointer_default() interface property

see http://msdn2.microsoft.com/en-us/library/aa378984(VS.85).aspx
(Here they talk about the rightmost pointer, but testing shows
they mean the leftmost pointer.)

metze
(This used to be commit 0569139ca2)
2008-02-01 22:36:05 +01:00
Stefan Metzmacher
9e999a67a7 CHECKED... pidl/Samba4::NDR::Parser: correctly get the name of an array element
When we have "*r->out.ous"
(char ***ous, a pointer to a pointer to an array).
we need to use "(*r->out.ous)[3]" to access the 3rd
element of the array "*r->out.ous[3]" was generated before,
but that's the same as "*(r->out.ous[3])".

metze
(This used to be commit 13afc89a87)
2008-02-01 22:18:54 +01:00
Stefan Metzmacher
a0c83e990f CHECKED... TODO:MSG pidl/Samba4::NDR::Parser: fix ...
metze
(This used to be commit 29c104944b)
2008-02-01 21:50:22 +01:00
Stefan Metzmacher
c94ee07499 CHECKED... pidl/Samba4::NDR::Parser: move logic for extra get_pointer_of() into a function
metze
(This used to be commit 3369015f5d)
2008-02-01 21:29:33 +01:00
Stefan Metzmacher
a4571e661f pidl: cosmetic fix to use the same value everywhere
metze
(This used to be commit 3c19198143)
2008-02-01 18:20:32 +01:00
Amin Azez
77a2870186 Samba4 poor mans debug_ctx()
DEBUG(), DEBUGADD() and friends can now use debug_ctx() in the
formatting expressions again,
e.g.

DEBUG(5,("Guid failed to match: %s\n", GUID_string(debug_ctx(), r->guid)));

Sadly it's done with macros (again) but when we need to save the 8 or 16
bytes of object code per DEBUG() expression we can do it the Samba 3 way
with added thread-safety for Samba 4. That could save up to 200K,
allowing 12 bytes for each occurrance of DEBUG...

Signed-off-by: Amin Azez <azez@ufomechanic.net>
(This used to be commit 9781967542)
2008-02-01 18:09:49 +01:00
Stefan Metzmacher
0f9c453e12 pidl/IDL: don't strip ',' from the properties content
metze
(This used to be commit fdf9bcb163)
2008-02-01 07:09:38 +01:00
Stefan Metzmacher
95c5de1828 pidl/Samba4::NDR::Parse: move the calculation of NDR_PULL_SET_MEM_CTX() flags into one function
metze
(This used to be commit 74bf021aa7)
2008-02-01 07:01:06 +01:00
Amin Azez
a72a4efa69 Fix sending of large nttrans responses.
req_grow_data was growing the original req, not this_req which
was being used for the current fragment.
(This used to be commit 2ac47f5ab6)
2008-02-01 06:36:32 +01:00
Stefan Metzmacher
e6362c4d8c pidl/Samba4::NDR::Parser: pass down the correct $var_name to AllocateArrayLevel()
metze
(This used to be commit c630bece38)
2008-01-31 15:56:57 +01:00
Andrew Tridgell
8398982ac9 Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-test
(This used to be commit f6a5848e5e)
2008-01-31 09:49:15 +11:00
Andrew Tridgell
3a3ff8ebe7 merged tdb transaction fix
(This used to be commit eb3af24926)
2008-01-31 09:48:46 +11:00
Stefan Metzmacher
1c22c925e5 libndr: depend on samba-config, so that callers doesn't need to know about it
metze
(This used to be commit fc69e3f829)
2008-01-30 20:30:27 +01:00
Stefan Metzmacher
dca5fab180 pidl: be consistent and always ask pkg-config only for 'ndr'
metze
(This used to be commit ab2e1394d0)
2008-01-30 20:25:40 +01:00
Andrew Bartlett
3231717e14 Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit 8011716734)
2008-01-30 11:47:52 +11:00
Jelmer Vernooij
61379d97cd python: Provide PyAPI_DATA macro for older versions of Python (< 2.3).
(This used to be commit 421bdd203e)
2008-01-29 14:27:27 +01:00
Jelmer Vernooij
bcad73a7f7 Partially revert d64a2288a2 and 351c2e99ab to see if that fixes the build.
(This used to be commit 2a79cebfd9)
2008-01-29 13:10:43 +01:00
Andrew Bartlett
9cc90f67b3 Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit 81a0a7967b)
2008-01-29 10:59:14 +11:00
Andrew Bartlett
c16cd19bda Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit f0a4db22e5)
2008-01-28 16:39:03 +11:00
Jelmer Vernooij
87e933d886 torture: Fix too early free in spoolss notify test.
(This used to be commit f5ea5de797)
2008-01-28 02:49:44 +01:00
Jelmer Vernooij
9ad04b695b ldb: Add ldb_oom() calls in a couple of places.
(This used to be commit 1163c2ad54)
2008-01-26 23:49:33 +01:00