Age | Commit message (Collapse) | Author | Files | Lines |
|
Jeremy.
(This used to be commit fb7a529c4c65788c307c1043cf2b664059ed8c2a)
|
|
(This used to be commit c80d686f59a8b6c53305af1233137c22a26f6750)
|
|
(This used to be commit 117796c19ba9615113ae549068fd0b5ad5d3aa97)
|
|
(This used to be commit 62a0cfd865d6ad4c05e2461dbf0b81988683a219)
|
|
I had previously thought this was unnecessary, as windows doesn't use
standards compliant UTF-16, and for filesystem operations treats bytes
as UCS-2, but Bjoern Jacke has pointed out to me that this means we
don't correctly store extended UTF-16 characters as UTF-8 on
disk. This can be seen with (for example) the gothic characters with
codepoints above 64k.
This commit also adds a LOCAL-ICONV torture test that tests the first
1 million codepoints against the system iconv library, and tests 5
million random UTF-16LE buffers for identical error handling to the
system iconv library.
the lib/iconv.c changes need backporting to samba3
(This used to be commit 756f28ac95feaa84b42402723d5f7286865c78db)
|
|
(This used to be commit 17a53eaac2d0d76413c8bb27a6f1c80536ccf3a7)
|
|
have removed it.
- lp_use_mmap() is really meant to cope with systems that have broken
mmap coherence, but map_file() doesn't need coherence, as its maps
read only
- map_file() is used to map the charset files before loadparm has
loaded, so lp_use_mmap() is always returning false for the major
use of map_file()
(This used to be commit dbe786f61e3de0758f95f2abd1b15a4c320432ca)
|
|
an external libiconv library.
(This used to be commit 168be7fbd7ae876ded39f73a7835e91b35e67244)
|
|
generate a separate *_send() async function for every RPC call, and
there is a single dcerpc_ndr_request_recv() call that processes the
receive side of any rpc call. The caller can use
dcerpc_event_context() to get a pointer to the event context for the
pipe so that events can be waited for asynchronously.
The only part that remains synchronous is the initial bind
calls. These could also be made async if necessary, although I suspect
most applications won't need them to be.
(This used to be commit f5d004d8eb8c76c03342cace1976b27266cfa1f0)
|
|
metze
(This used to be commit ecdb0b442659e80ca91d5ec5b505224c68a97c5a)
|
|
metze
(This used to be commit b9152c9ba2735f511663f34a910142eed67701b5)
|
|
NOTE: tdbbackup and tdbtool seems to be broken...
NOTE: I also added SMB_EXT_LIB(GDBM,...)
because that is needed by tdbtest
metze
(This used to be commit e66630662d4203ccecbb20962e83dbf50a2c056f)
|
|
that reduces the size of thet binaries with '-g' and gcc 3.4
from 5.3 MB to 745 KB:-)
metze
(This used to be commit 037a6d95b4a4640059a10dcbb0a266d15eaf42b3)
|
|
metze
(This used to be commit dde5442b75ba169856a52a45588e2702d198b31d)
|
|
--enable-developer warning for when they are missing.
Andrew Bartlett
(This used to be commit 8115e44d47bcd65edba08d10117180ae508cdbc1)
|
|
this means you can do:
talloc_set_destructor(ptr, my_destructor);
and your destructor will be called with the pointer as an argument
when the pointer is about to be freed. The destructor can refuse the
free by returning -1.
You can also increase the reference count on a pointer like this:
talloc_increase_ref_count(ptr);
and a talloc_free() will just reduce the reference count, only
actually freeing the memory when the count reaches zero.
(This used to be commit b5608d52d33a1d8be5a8a6751bc6cec162c7ed92)
|
|
following the data_blob() API properly then this will cause no
problems. I'm expecting chaos.
this is part of the general move towards using talloc for everything
in samba4
(This used to be commit 3f6b3c21e4d538aeb30b7906a75995b8f4c11223)
|
|
I plan on replacing the concept by adding a generic destructor in all talloc ptrs, so you can do:
talloc_set_destructor(ptr, my_destructor);
to setup a function that will be called on free.
(This used to be commit 957b260621c091830c01e9e8c370c199350342ec)
|
|
Jeremy.
(This used to be commit b43320ee5c9ac14c330e61ae62e0786b088e04fa)
|
|
metze
(This used to be commit eb75d9323fb07fe9a19bbf77168aeb8a4b92c3b8)
|
|
and nasy pointer tricks.
this involved fixing some of the internals of smbclient
(This used to be commit 126fec6169f9412932c82e7675840476132bce87)
|
|
it can only indicate programmer error, and doing a smb_panic() ensures
an automatic backtrace (and eventually an abort()).
Andrew Bartlett
(This used to be commit b2d93d0010d80f158760f53273853de2439c3062)
|
|
an SPNEGO login from WinXP at least).
talloc_asprintf_append() lost an argument, but because TALLOC_CTX is
now a void*, this was not picked up by the compiler.
I've tested the login (asn1), but not the registry/gtk changes.
Andrew Bartlett
(This used to be commit 4294be44057124568fe1d176702056bb62ad3214)
|
|
(This used to be commit cc3d420c33152c8e9026dc39a7322d11edb3c774)
|
|
(This used to be commit 6ffdfd779936ce8c5ca49c5f444e8da2bbeee0a8)
|
|
This version does the following:
1) talloc_free(), talloc_realloc() and talloc_steal() lose their
(redundent) first arguments
2) you can use _any_ talloc pointer as a talloc context to allocate
more memory. This allows you to create complex data structures
where the top level structure is the logical parent of the next
level down, and those are the parents of the level below
that. Then destroy either the lot with a single talloc_free() or
destroy any sub-part with a talloc_free() of that part
3) you can name any pointer. Use talloc_named() which is just like
talloc() but takes the printf style name argument as well as the
parent context and the size.
The whole thing ends up being a very simple piece of code, although
some of the pointer walking gets hairy.
So far, I'm just using the new talloc() like the old one. The next
step is to actually take advantage of the new interface
properly. Expect some new commits soon that simplify some common
coding styles in samba4 by using the new talloc().
(This used to be commit e35bb094c52e550b3105dd1638d8d90de71d854f)
|
|
the build for some BSD varients.
(This used to be commit 73e9ee791472bb212efe0eb4744daa91678263ad)
|
|
(This used to be commit d07dbdb22acc4c9cafb7141486fbf162d9f8164e)
|
|
and let smbclient use the cmdline _* functions
metze
(This used to be commit ffb87ebc33e728bf8506383f95b80605adec3c68)
|
|
now you're prompted when cmdline_get_userpassword() is called
and the password is not yet known
metze
(This used to be commit d14a01533c5d465ff3709c48576b798b3be807e0)
|
|
metze
(This used to be commit ecf6be894fc47f9e00f46531e06ef20e11115c0f)
|
|
and deal with users DOMAIN and lp_workgroup() of the local workstation
metze
(This used to be commit 1fc0100e44a8640cfc15effb99f5824cb7817da8)
|
|
metze
(This used to be commit 5e5681e2830bfd487d7e783249fe069b41be1f37)
|
|
(This used to be commit d721b122b5c443363b8f8ec2e1ef4b798378b658)
|
|
(This used to be commit 5dc793b2b4b5c54df4aa3b0c98c248bdd671bbb1)
|
|
team meeting at CIFS04. It allows you to find the talloc context given
any pointer allocated with talloc.
(This used to be commit 01dc4ed9b4f9390930d3c235cf2ccf9a9028392d)
|
|
- IDL fixes + adding comments
- Start working on dcom infrastructure
(This used to be commit ef0fc269f06c82594c34ad8673c76c5ea099250e)
|
|
search torture test, as some servers return really bad entries.
(This used to be commit c900ebb3ac18d77ab334d3bf5259b3bba547b09c)
|
|
(This used to be commit 1c3d52cea4dff57b14ee9bc197001fadb1d18abf)
|
|
timeout (again from volker in trunk)
(This used to be commit 40d8262e7dbba76f88f1900744ed02f9f7fcdadd)
|
|
on trunk
(This used to be commit 606caddeb95382287fa41a5017ca473d0301be6b)
|
|
just had on emulating % macros from smb.conf in a possible ldb based
config system
(This used to be commit d547479290e30d4fd86ab718528e879a28f71447)
|
|
changes
- got rid of global_myname(), using lp_netbios_name() instead
(This used to be commit e8d4b390884e487163d81f66a5a7ac1de1305d9a)
|
|
non-blocking sockets
(This used to be commit bb6cbf29ccf8f2b556bf3e7b3ff487faa0f36773)
|
|
(This used to be commit d2553aac0a75591026b9b1fcf46065e5b03ed19c)
|
|
Up to now the client code has had an async API, and operated
asynchronously at the packet level, but was not truly async in that it
assumed that it could always write to the socket and when a partial
packet came in that it could block waiting for the rest of the packet.
This change makes the SMB client library full async, by adding a
separate outgoing packet queue, using non-blocking socket IO and
having a input buffer that can fill asynchonously until the full
packet has arrived.
The main complexity was in dealing with the events structure when
using the CIFS proxy backend. In that case the same events structure
needs to be used in both the client library and the main smbd server,
so that when the client library is waiting for a reply that the main
server keeps processing packets. This required some changes in the
events library code.
Next step is to make the generated rpc client code use these new
capabilities.
(This used to be commit 96bf4da3edc4d64b0f58ef520269f3b385b8da02)
|
|
this fixes a crash bug in smbd with multiple RPC clients
(This used to be commit 6e102f732e4404fc5f9b2851d12b00d2d083b43d)
|
|
this might explain the tdb corruption that metze found - it caused heap corruption that affected tdb
(This used to be commit 31d55dfb443612a341ff6ade77c6e4477c4fefca)
|
|
Rework our random number generation system.
On systems with /dev/urandom, this avoids a change to secrets.tdb for every fork().
For other systems, we now only re-seed after a fork, and on startup.
No need to do it per-operation. This removes the 'need_reseed'
parameter from generate_random_buffer().
This also requires that we start the secrets subsystem, as that is
where the reseed value is stored, for systems without /dev/urandom.
In order to aviod identical streams in forked children, the random
state is re-initialised after the fork(), at the same point were we do
that to the tdbs.
Andrew Bartlett
(This used to be commit b97d3cb2efd68310b1aea8a3ac40a64979c8cdae)
|
|
- NULL in, NULL out
Andrew Bartlett
(This used to be commit 2cc0b3a2f1785c53268f018999a87c26539fd4a6)
|