1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-30 20:23:49 +03:00
Commit Graph

245 Commits

Author SHA1 Message Date
Andrew Tridgell
4004c69937 r4616: the first phase in the addition of proper support for
dcerpc_alter_context and multiple context_ids in the dcerpc client
library.

This stage does the following:

 - split "struct dcerpc_pipe" into two parts, the main part being "struct dcerpc_connection", which
   contains all the parts not dependent on the context, and "struct dcerpc_pipe" which has
   the context dependent part. This is similar to the layering in libcli_*() for SMB

 - disable the current dcerpc_alter code. I've used a #warning until i
   get the 2nd phase finished. I don't know how portable #warning is, but
   it won't be long before I add full alter context support anyway, so it won't last long

 - cleanup the allocation of dcerpc_pipe structures. The previous code
   was quite awkward.
2007-10-10 13:08:34 -05:00
Andrew Tridgell
6e7754abd0 r4591: - converted the other _p talloc functions to not need _p
- 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.
2007-10-10 13:08:30 -05:00
Andrew Tridgell
89b74b5354 r4549: got rid of a lot more uses of plain talloc(), instead using
talloc_size() or talloc_array_p() where appropriate.

also fixed a memory leak in pvfs_copy_file() (failed to free a memory
context)
2007-10-10 13:08:25 -05:00
Stefan Metzmacher
c981808ed4 r4419: move security_token stuff to the libcli/security/
and debug privileges

metze
2007-10-10 13:07:47 -05:00
Andrew Bartlett
1933cd12fb r4358: At metze's request, the Christmas elves have removed gensec_end in
favor of talloc_free().

Andrew Bartlett
2007-10-10 13:07:37 -05:00
Tim Potter
d8b1ba93a8 r4341: Fix const warning. 2007-10-10 13:07:36 -05:00
Tim Potter
1d96717843 r4201: Remove duplicate const. 2007-10-10 13:07:26 -05:00
Andrew Tridgell
7b446af09b r4147: converted from NT_USER_TOKEN to struct security_token
this is mostly just a tidyup, but also adds the privilege_mask, which
I will be using shortly in ACL checking.

note that I had to move the definition of struct security_token out of
security.idl as pidl doesn't yet handle arrays of pointers, and the
usual workaround (to use a intermediate structure) would make things
too cumbersome for this structure, especially given we never encode it
to NDR.
2007-10-10 13:06:31 -05:00
Stefan Metzmacher
ab2c2f27e1 r4070: move some defines from asn_1.h to the places they belong to
metze
2007-10-10 13:06:22 -05:00
Andrew Tridgell
eec698254f r4055: fixed more places to use type safe allocation macros 2007-10-10 13:06:20 -05:00
Andrew Tridgell
0928b1f5b6 r4037: fixed a bunch of "might be uninitialised" warnings after enabling -O1 in my compile 2007-10-10 13:06:16 -05:00
Stefan Metzmacher
1239076ef7 r3963: fix conpiler warnings
metze
2007-10-10 13:06:08 -05:00
Jelmer Vernooij
4840eaeed3 r3891: Add rot (Running Object Table) interface 2007-10-10 13:06:02 -05:00
Jelmer Vernooij
16d905f6b0 r3881: Split up the LIBNDR_GEN subsystem into NDR_* and RPC_NDR_* subsystems.
This reduces the total size of the samba binaries from 119 Mb to 73 Mb.
Next step will be to have the build system obtain some of this information
by itself, so that we don't have to write ~10 lines per interface manually.
2007-10-10 13:06:01 -05:00
Jelmer Vernooij
3c436590ae r3790: use a registration function that is called from dcerpc_*_init functions
rather then a large table in librpc/gen_ndr/tables.c. This will allow us
to only link in only the required gen_ndr files (speeds up linking quite a
bit, makes binaries smaller).

Each gen_ndr_* file now has a init function that calls the init functions
of the interfaces it contains. I did it this way to keep pidl's code simple,
though it might hurt startup time a bit. I'd be happy to change it if
people like one function better.
2007-10-10 13:05:53 -05:00
Jelmer Vernooij
3d885562c9 r3744: Support building subsystems as a shared library. Modules don't work yet,
so while this does compile, it does not work yet.
2007-10-10 13:05:50 -05:00
Jelmer Vernooij
64826da834 r3733: More build system fixes/features:
- Use .mk files directly (no need for a SMB_*_MK() macro when adding a new SUBSYSTEM, MODULE or BINARY). This allows addition of new modules and subsystems without running configure
 - Add support for generating .dot files with the Samba4 dependency tree (as used by the graphviz and springgraph utilities)
2007-10-10 13:05:47 -05:00
Andrew Tridgell
5205f598b8 r3633: - moved module init functions to after smb.conf and command line
parsing, so that module init can take account of lp_ parms (thats
  why gensec:krb5=no wasn't working)

- added a BASE-DISCONNECT torture test that tests server response to
  clients disconnecting with open lock and open requests pending
2007-10-10 13:05:41 -05:00
Jelmer Vernooij
7a8244761b r3586: Fix some of the issues with the module init functions.
Both subsystems and modules can now have init functions, which can be
specified in .mk files (INIT_FUNCTION = ...)

The build system will define :
 - SUBSYSTEM_init_static_modules that calls the init functions of all statically compiled modules. Failing to load will generate an error which is not fatal
 - BINARY_init_subsystems that calls the init functions (if defined) for the subsystems the binary depends on

This removes the hack with the "static bool Initialised = " and the
"lazy_init" functions
2007-10-10 13:05:36 -05:00
Andrew Tridgell
041f77b6a1 r3579: with the gcc warning flag from abartlet we don't need sys_strftime() 2007-10-10 13:05:34 -05:00
Andrew Bartlett
cbb0c67d06 r3570: Export the user's group list from ntlm_auth, via a new command 'UG'
(user groups).  The form of this is not final, but is this should be a
discussion point with the squid team.

Andrew Bartlett
2007-10-10 13:05:32 -05:00
Andrew Tridgell
630af28a0f r3552: fixed sense of ACL test 2007-10-10 13:05:31 -05:00
Andrew Tridgell
1b945f9f4b r3551: these utils need system/filesys.h 2007-10-10 13:05:31 -05:00
Andrew Tridgell
321fb06a62 r3543: fixed some #include lines to make them more consistent, and fixed
conditional compilation of xattr client code
2007-10-10 13:05:30 -05:00
Andrew Bartlett
9ea34abce3 r3541: Add support (to be verified with the squid team) for the Squid 3.0
multiplexed helper system.

This system prefixes every request with a number, and we maintian a
state machine for each of these integers.  This means that we can have
multiple outstanding challenges, without the overhead of a whole
ntlm_auth process.

In future, the actual password check will also be async.

Andrew Bartlett
2007-10-10 13:05:30 -05:00
Andrew Tridgell
7dd3a5a6da r3497: removed some include cruft, and split out librpc/gen_ndr/tables.h 2007-10-10 13:05:22 -05:00
Andrew Tridgell
558de54ec6 r3494: got rid of include/rewrite.h, and split out the dynconfig.h header 2007-10-10 13:05:22 -05:00
Jelmer Vernooij
640e3a8ce8 r3490: All tests work against NT4 now 2007-10-10 13:05:21 -05:00
Jelmer Vernooij
06048d0dac r3489: Add a couple more DCOM tests (Both OxidResolver and RemoteActivation are
completely covered now)
2007-10-10 13:05:21 -05:00
Andrew Tridgell
8e9212ecfc r3478: split out some more pieces of includes.h 2007-10-10 13:05:20 -05:00
Andrew Tridgell
b97e395c81 r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ioctl.h) 2007-10-10 13:05:17 -05:00
Andrew Tridgell
10188869ef r3454: moved a few more things out if includes.h into the include/system/ include files.
this brings us down to about 11k lines of headers included with
includes.h, while still retaining the speed of building with pch
2007-10-10 13:05:13 -05:00
Andrew Tridgell
7b7477ac42 r3453: - split out the auth and popt includes
- tidied up some of the system includes

- moved a few more structures back from misc.idl to netlogon.idl and samr.idl now that pidl
  knows about inter-IDL dependencies
2007-10-10 13:05:13 -05:00
Andrew Tridgell
6b1f86aea8 r3449: more include file reduction
the ldb part isn't ideal, I will have to think of a better solution
2007-10-10 13:05:13 -05:00
Andrew Tridgell
264ce91810 r3447: more include/system/XXX.h include files 2007-10-10 13:05:12 -05:00
Andrew Tridgell
2e25c71853 r3443: the next stage in the include files re-organisation.
I have created the include/system/ directory, which will contain the
wrappers for the system includes for logical subsystems. So far I have
created include/system/kerberos.h and include/system/network.h, which
contain all the system includes for kerberos code and networking code.
These are the included in subsystems that need kerberos or networking
respectively.

Note that this method avoids the mess of #ifdef HAVE_XXX_H in every C
file, instead each C module includes the include/system/XXX.h file for
the logical system support it needs, and the details are kept isolated
in include/system/

This patch also creates a "struct ipv4_addr" which replaces "struct
in_addr" in our code. That avoids every C file needing to import all
the system networking headers.
2007-10-10 13:05:11 -05:00
Jelmer Vernooij
5d83de4c64 r3415: Add support for parsing a Request file before a Reply file so we can
use ndrdump for replies that depend on variables from requests
2007-10-10 13:05:07 -05:00
Andrew Tridgell
5921587ec2 r3323: more warning reductions 2007-10-10 13:04:55 -05:00
Stefan Metzmacher
d331a83f08 r3291: fix the build, thx to pipitas for finding this
metze
2007-10-10 13:04:51 -05:00
Andrew Tridgell
7f2c771b0e r3278: - rewrote the client side rpc connection code to use lib/socket/
rather than doing everything itself. This greatly simplifies the
  code, although I really don't like the socket_recv() interface (it
  always allocates memory for you, which means an extra memcpy in this
  code)

- fixed several bugs in the socket_ipv4.c code, in particular client
  side code used a non-blocking connect but didn't handle EINPROGRESS,
  so it had no chance of working. Also fixed the error codes, using
  map_nt_error_from_unix()

- cleaned up and expanded map_nt_error_from_unix()

- changed interpret_addr2() to not take a mem_ctx. It makes absolutely
  no sense to allocate a fixed size 4 byte structure like this. Dozens
  of places in the code were also using interpret_addr2() incorrectly
  (precisely because the allocation made no sense)
2007-10-10 13:04:49 -05:00
Jelmer Vernooij
5c46747c36 r3006: Poptify 2007-10-10 12:59:56 -05:00
Andrew Tridgell
f19201ea27 r2643: convert more of the auth subsyystem to the new talloc methods. This
also fixes a memory leak found with --leak-check.
2007-10-10 12:59:15 -05:00
Andrew Tridgell
7124949140 r2630: I missed a couple of places in the gensec talloc conversion 2007-10-10 12:59:14 -05:00
Andrew Tridgell
f12ee2f241 r2629: convert gensec to the new talloc model
by making our gensec structures a talloc child of the open connection
we can be sure that it will be destroyed when the connection is
dropped.
2007-10-10 12:59:14 -05:00
Andrew Bartlett
cdb8261775 r2612: Ensure ntlm_auth always logs to stderr.
Add missing break;

Andrew Bartlett
2007-10-10 12:59:11 -05:00
Andrew Bartlett
8f4dab5d44 r2611: Try to make Samba4's ntlm_auth more consistant with Samba 3.0.
Andrew Bartlett
2007-10-10 12:59:11 -05:00
Tim Potter
d7d8a7ffc6 r2597: A small program that takes SID strings on stdin and produces a marshalled
lsa_SidArray on stdout.
2007-10-10 12:59:11 -05:00
Tim Potter
daad76207d r2582: Merge checks for xattr and acl libraries from Samba3 so the {get,set}ntacl
programs can build on non-xattr machines.
2007-10-10 12:59:07 -05:00
Tim Potter
5b88226f90 r2576: Some userspace tools for getting and setting ntacls via the 'security.ntacl'
extended attribute.
2007-10-10 12:59:07 -05:00
Andrew Bartlett
5c5b45c1a8 r2546: Remove another strupper_m() that we don't need.
Andrew Bartlett
2007-10-10 12:59:04 -05:00