Age | Commit message (Collapse) | Author | Files | Lines |
|
total include lines in compiling C files in Samba (the .gch file is
now 5M instead of 12M)
This also gets rid of the silly gtk compile warning for non-gtk code
(This used to be commit 8ebd20cf551c8c1fad98ec723d91873fa202b85a)
|
|
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.
(This used to be commit 2e25c71853f8996f73755277e448e7d670810349)
|
|
(This used to be commit 73ea8ee6c268371d05cf74160f2ad451dd2ae699)
|
|
The thing that finally convinced me that minimal includes was worth
pursuing for rpc was a compiler (tcc) that failed to build Samba due
to reaching internal limits of the size of include files. Also the
fact that includes.h.gch was 16MB, which really seems excessive. This
patch brings it back to 12M, which is still too large, but
better. Note that this patch speeds up compile times for both the pch
and non-pch case.
This change also includes the addition iof a "depends()" option in our
IDL files, allowing you to specify that one IDL file depends on
another. This capability was needed for the auto-includes generation.
(This used to be commit b8f5fa8ac8e8725f3d321004f0aedf4246fc6b49)
|
|
(This used to be commit 3f902f8d851d32fa81d89ed61bfda6edaea00984)
|
|
(This used to be commit 0333f417a86a54a328ca9bd908076f9fe8405dc7)
|
|
(This used to be commit f8e45e143087d333da4afc193b4fa1991ba04c63)
|
|
support in
gregedit
(This used to be commit 33f429c61f2859e3ad60fa38823174bbd331d91a)
|
|
We now pass the RPC-WINREG torture test.
Also, constructions like the following work now:
regtree <-> smbd <-> NTUSER.DAT
(This used to be commit df952e95cd1cbbfb62b4620e9452993aaef44ad3)
|
|
specified in the various registry tools.
Allow opening a remote registry to partly fail (I.e. if not all hives could be opened)
(This used to be commit 313034b10d7a70d079e2bec1af38cf2a7cd918c1)
|
|
Add support flush_key and close_hive.
(This used to be commit c526273df238c994c4de3c1704c6e95433f2331c)
|
|
The main change is to get rid of talloc_parent_chunk() from all
commonly used code paths, so talloc_free() is now O(1) again. It was
originally O(1), but the last round of changes broke that.
Also some documentation updates
(This used to be commit d4fe21cdb982c8046b19f671d872b43cdd2efc72)
|
|
var/locks/smbd.tmp/
and deletes that dir on startup.
(This used to be commit 7e942e7f1bd2c293a0e6648df43a96f8b8a2a295)
|
|
We found a few months ago that TDB_CLEAR_IF_FIRST is extremely
inefficient for large numbers of connections, due to a fundamental
limitation in the way posix byte range locking is implemented. Rather
than the nasty workaround we had for Samba3, we now have a single
"cleanup tmp files" function that runs when smbd starts. That deletes
the tmp tdbs, so TDB_CLEAR_IF_FIRST is not needed at all.
(This used to be commit ffa285bc783c775a2d53a58fb691ca339e6c76ae)
|
|
listening sockets after the fork to prevent the child still listening
on incoming requests.
I have also added an optimisation where we use dup()/close() to lower
the file descriptor number of the new socket to the lowest possible
after closing our listening sockets. This keeps the max fd num passed
to select() low, which makes a difference to the speed of select().
(This used to be commit f2a9bbc317ba86ebe87c3ca27a3a0192de91014d)
|
|
now against samba 4, at least with a ldb backend:
winreg_Open*
winreg_OpenKey
winreg_EnumKey
winreg_DeleteKey
winreg_CreateKey
(This used to be commit a71d51dd3b136a1bcde1704fe9830985e06bb01b)
|
|
in the server.
(This used to be commit da65a248c292a90342e1394ee4132ef2c7afd3c8)
|
|
(This used to be commit 76c4ba6d29a6ad1e21c2d7674e1f323e8d53d627)
|
|
(This used to be commit 9c13f42c1fd489a6a663f614a41c59730c18a054)
|
|
(This used to be commit 9794570c6d0646cc34147bf8128802b181f658f0)
|
|
(This used to be commit d8298901243ca4ce2ec420fa523c8e1407e72513)
|
|
(This used to be commit 5921587ec26e4892efc678421277e4969417d7f5)
|
|
was a real bug
(This used to be commit 02d5d0f685e44bd66aff4a007f0bf34c8f915574)
|
|
as randomly short recv/send when socket:testnonblock is enabled
(This used to be commit 718175a265d34bfdbcbf0cc6b55dbf6b389f3194)
|
|
you set this option (either on the command line using --option or in
smb.conf) then every socket recv or send will return short by random
amounts. This allows you to test that the non-blocking socket logic in
your code works correctly.
I also removed the flags argument to socket_accept(), and instead made
the new socket inherit the flags of the old socket, which makes more
sense to me.
(This used to be commit 406d356e698da01c84e8aa5b7894752b4403f63c)
|
|
SOCKET_FLAG_BLOCK is set.
(This used to be commit a2d92aa431e0e9752387eebe741d9e6f376f74d7)
|
|
The main change is to make socket_recv() take a pre-allocated buffer,
rather than allocating one itself. This allows non-blocking users of
this API to avoid a memcpy(). As a result our messaging code is now
about 10% faster, and the ncacn_ip_tcp and ncalrpc code is also
faster.
The second change was to remove the unused mem_ctx argument from
socket_send(). Having it there implied that memory could be allocated,
which meant the caller had to worry about freeing that memory (if for
example it is sending in a tight loop using the same memory
context). Removing that unused argument keeps life simpler for users.
(This used to be commit a16e4756cd68ca8aab4ffc59d4d9db0b6e44dbd1)
|
|
NT_STATUS_IS_ERR()
(This used to be commit 80a109de8458420ac0b40c563f4b3bc51424d759)
|
|
If a socket is non-blocking then adding MSG_DONTWAIT is pointless (it
does nothing), so all we lose is the ability to set non-blocking on a
packet-by-packet basis, which is not a very useful thing to have
anyway
if the socket is blocking then the code already adds MSG_WAITALL, so
MSG_DONTWAIT is also not needed in that case.
(This used to be commit b8a2afae67691a609b4a7a577fee3f9518adc9d2)
|
|
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)
(This used to be commit 7f2c771b0e0e98c5c9e5cf662592d64d34ff1205)
|
|
(This used to be commit cc93813e4a09c538ad485dc2b3cb4c9be34f3d18)
|
|
tools on Solaris.
(This used to be commit c5d338d06137fe7464849df02671d8ab833e3b4e)
|
|
(This used to be commit 05530bfb99011db8a00f5debcf8eec19b5e8a5d6)
|
|
expose it for use by the posix backend
(This used to be commit 687633b5d68c8f883a4d9cdd92c660dabc5d7cfa)
|
|
compile on platforms like solaris without having to link to the whole
of the Samba4 lib directory.
(This used to be commit f6862bfc1cbc9278914b4b73365f63d3da0a08dd)
|
|
make the ldb tools depend on it. This should help the build of the ldb
tools on platforms without strnlen() or strndup()
(This used to be commit e6ddb9d8f3a218b22b0176a2525b5daaca7170e4)
|
|
socket options are really meant for tcp)
(This used to be commit 238febb0088f85933c869052f4f83ff31f164df1)
|
|
destructor
(This used to be commit ab222b236a091d31b1f5f2cba150a11585ab5836)
|
|
process
exits. Commenting it out until we have a clean way of doing this.
(This used to be commit fa0760dd5fa361be3b72dc4adc8b736e8a862606)
|
|
nicely :-)
The various interface that support ncalrpc work nicely when tested
with smbtorture and ncalrpc.
Running RPC-SAMR against local smbd here is slightly faster using ncalrpc:
ncalrpc: 1.8 sec
ncacn_ip_tcp: 1.9 sec
ncacn_np: 2.5 sec
(This used to be commit 2cfc8f24ce209f47153d3a5bd7007dd1b0578b26)
|
|
- made idtree return a "struct idr_context *" instead of a void*
- more efficient idr_remove for ids that are not present (patch from Jim Houston)
(This used to be commit f8d12d4b4ae5a38de7869deb782cb8f48504844c)
|
|
metze
(This used to be commit 3bbda7475a63f939019a41a0b7da8d179c533d79)
|
|
metze
(This used to be commit 61de2229e27c55041cb4e1aac32bc1d8ed68a05c)
|
|
\\administrator@w2k3.vmnet1.vm.base'
we need to send an empty string as userdomain in this case.
fix bug #1317 in the client side
metze
(This used to be commit 958aa8de630b2a88f29ccdf80ac0fc44a8205401)
|
|
- reenable index tests
metze
(This used to be commit 1e7e94fdb10db831090f9bd37e39053dfcde04ce)
|
|
- add tests for ldbrename
- disable all tests which regenerate the index
(this is broken for me...the process hangs,
tridge we need to discuss that)
- link only the needed stuff to the ldb tools
- build ldbtest inside samba
metze
(This used to be commit 18552f4786c24e0019cc87726ef4c05365fe586e)
|
|
metze
(This used to be commit f7564bf4d2efb702cf3d11237fbe2adf5efb1ebf)
|
|
metze
(This used to be commit 71ccac56c21635e7f6eb8d558230f637f50149ad)
|
|
metze
(This used to be commit 52eab8dc17a1cd1a8c0382ab8d6e7f6c7ddeea19)
|
|
Because we didn't count the null terminator, we would not move past it
in the packet.
Andrew Bartlett
(This used to be commit 8b38bffc7098610c469ab61b7e0e6884f046f286)
|