Age | Commit message (Collapse) | Author | Files | Lines |
|
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
|
|
|
|
We previously allocated sockets as direct children of the event
context. That led to crashes if a service called
task_server_terminate(), as it left the socket open and handling
events for a dead protocol.
Making them a child of the task allows the task to terminate and take
all its sockets with it.
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
|
|
|
|
list=""
list="$list event_context:tevent_context"
list="$list fd_event:tevent_fd"
list="$list timed_event:tevent_timer"
for s in $list; do
o=`echo $s | cut -d ':' -f1`
n=`echo $s | cut -d ':' -f2`
r=`git grep "struct $o" |cut -d ':' -f1 |sort -u`
files=`echo "$r" | grep -v source3 | grep -v nsswitch | grep -v packaging4`
for f in $files; do
cat $f | sed -e "s/struct $o/struct $n/g" > $f.tmp
mv $f.tmp $f
done
done
metze
|
|
We should only include events.h where we really need it
and prefer forward declarations of 'struct event_context'
metze
|
|
[I can't swear that this covers all the smb2 cases, there are some reply
functions that I can't trace properly]
Add NTVFS_ASYNC_STATE_CLOSE bit to ntvfs_request->async_states->state
so that the ntvfs layer can signify that the client transport should
be closed, most useful for proxy servies, and most likely due to a
forwarding transport having been closed.
Signed-off-by: Sam Liddicott <sam@liddicott.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
|
|
|
|
metze
(This used to be commit 5b3ba3f3556e8031133128853cd2324ee3852aa1)
|
|
metze
(This used to be commit 36a39b92d732a682e38ad4b3f733951fee4757ed)
|
|
(This used to be commit 8e919dcb0826a5b25d037ee6144af5f7cb21f3ae)
|
|
This converts our SMB and SMB2 code to use a common structure "struct
request_bufinfo" for information on the buffer bounds of a packet,
alignment information and string handling. This allows us to use a
common backend for SMB and SMB2 code, while still using all the same
string and blob handling functions.
Up to now we had been passing a NULL req handle into these common
routines from the SMB2 side of the server, which meant that we failed
any operation which did a bounds checked string extraction (such as a
RenameInformation setinfo call, which is what Vista uses for renaming
files)
There is still some more work to be done on this - for example we can
now remove many of the SMB2 specific buffer handling functions that we
had, and use the SMB ones.
(This used to be commit ca6d9be6cb6a403a81b18fa6e9a6a0518d7f0f68)
|
|
fixed the input side of the SMB2 negprot structure and parsers according to the documentation
(This used to be commit 55af8acc7b32c24e4b1187e9d8d1c8f060e914b0)
|
|
wbsrv_connection.
(This used to be commit 7c008664238ed966cb82adf5b25b22157bb50730)
|
|
uses of global_loadparm.
(This used to be commit a33a5530545086b81a3b205aa109dff11c546926)
|
|
explicitly.
(This used to be commit 5b29ef7c03d9ae76b0ca909e9f03a58e1bad3521)
|
|
(This used to be commit bbc4650871c127e89c0fff88264f529c17c3c151)
|
|
(This used to be commit 9b256a0ca232ea6e89771bf73a1adf877273a752)
|
|
(This used to be commit 1ce32673d960c8b05b6c1b1b99e1976a402417ae)
|
|
There are still a few tidyups of old FSF addresses to come (in both s3
and s4). More commits soon.
(This used to be commit fcf38a38ac691abd0fa51b89dc951a08e89fdafa)
|
|
- include the session vuid in the SMB2 128-Bit wire handles
as SMB2 oplock breaks doesn't include a TID or VUID in the header
we need to make sure the handle is unique for the whole TCP connection
metze
(This used to be commit 7c29b8a7e67c48478399788912b22c287fbd3b4e)
|
|
this should fix a pile of printf format warnings
(This used to be commit fe209e360e3857f39355335e4fa6a43b2db23038)
|
|
* Move dlinklist.h, smb.h to subsystem-specific directories
* Clean up ads.h and move what is left of it to dsdb/
(only place where it's used)
(This used to be commit f7afa1cb77f3cfa7020b57de12e6003db7cfcc42)
|
|
Commit the classic backwards compatible module which is the default one
(This used to be commit a89cc346b9296cb49929898d257a064a6c2bae86)
|
|
that makes it possible for clients to cancel
async requests, like NOTIFY...
metze
(This used to be commit eaccd3c4353833daf584aaea4d7e8f11004a8072)
|
|
requests on the smbsrv_connection, to be able to match then on
ntcancel
metze
(This used to be commit 04f0d3d03179b6060fd013b867d13caa92ec6460)
|
|
metze
(This used to be commit ea88c8c99eff2203d13f9877e590d9d7f2fbb910)
|
|
metze
(This used to be commit 316f3312d228a8c29185bf38c93c7f3aa1c6333e)
|
|
I only commit this as this is used in a global macro
tridge: we should try to get rid of this warning without using
(void)talloc_steal(ctx, ptr);
everywhere!!!
metze
(This used to be commit 3f8ce6d680b0c86abc698b8f9c6d8840da3ffd35)
|
|
noticed by the Mac OS 10 linker
metze
(This used to be commit 5928112cbc004f59660c8131abccc0f4933c2da3)
|
|
was fixed
(This used to be commit 09a9c7fdff8f3cc8d2a98228cede4f8af41a08eb)
|
|
request. The problem is that the talloc_free() in
smbsrv_send_reply_nosign() frees this reference, but doesn't free the
memory iself, thus leaving it attached to the connection context.
Metze, what was the idea behind this reference? If we need it, then we
need a corresponding talloc_free() to go with it.
(This used to be commit 2e105a32c78384b16a0e6a6dc8ff504593afef2e)
|
|
- move the SMB specific elements to the end
metze
(This used to be commit 0be887c7c6d318cb2990610f353e75b5f6d98c0c)
|
|
- to use a struct ntvfs_handle instead of a uint16_t fnum.
(to make it independend from the frontend protocol)
- the allocation of handles now is provided by the frontend
(smbsrv_*) via callbacks and not by each backend module
- this also makes sure that file handles are only passed
to the ntvfs subsystem when the tcon and session matches,
so modules can rely on this and need to check this.
- this allows multiple modules in the ntvfs module chain
to allocate file handles. This can be used for virtual
files like "\\$Extend\\$Quota:$Q:$INDEX_ALLOCATION"...
- also this will make SMB2 with 128 bit file handles possible
metze
(This used to be commit 287fc1c22d670f6e568014b420f7f4cb31dc7958)
|
|
smbsrv_session and smbsrv_tcon for management tools
metze
(This used to be commit 2c87f210e9e68de42dc45ca6532f3f33f4b6ce95)
|
|
- the process module subsystem should not know about smb_server.h
- the smb_server module should not know about process models
metze
(This used to be commit bac95bb8f4ad35a31ee666f5916ff9b2f292d964)
|
|
with this it's now possible to write a
ntvfs_test programm like the vfstest in samba3
also smb2 support will be possible later
metze
(This used to be commit 7253153691e35cd206346fbd4e9b9f95c042f602)
|
|
(This used to be commit e1f896948fad8cf5a1aec300865c250c5721ee7d)
|
|
but I don't to get the commit to large, to I'll do this tomorrow...
metze
(This used to be commit 10e627032d7d04f1ebf6efed248c426614f5aa6f)
|
|
metze
(This used to be commit 5709c1c4e1a561dd9af98cfefbbbdac9b18765b7)
|
|
metze
(This used to be commit 4df843658f0cc22af44946fa2d965816ff53df6d)
|
|
(for now we just do #define ntvfs_request smbsrv_request,
but it's the first step...)
- rename ntvfs_openfile() -> ntvfs_open()
- fix the talloc hierachie in some places in the ntvfs_map_*() code
metze
(This used to be commit ed9ed1f48f602354810937c0b0de850b44322191)
|
|
- Collect the generic utility functions into a lib/util/ (a la GLib is
for the GNOME folks)
- Remove even more files from include/
(This used to be commit ba62880f5b05c2a505dc7f54676b231197a7e707)
|
|
emulate the behaviour of XP standalone if required).
Andrew Bartlett
(This used to be commit 7f821097fbdbc9f35d96e05f85cf008f36c0eea3)
|
|
to specific dirs)
(This used to be commit 243cf760b077e155f5ac508aeebf819f7708a84e)
|
|
(This used to be commit c722f665c90103f3ed57621c460e32ad33e7a8a3)
|
|
(This used to be commit 0aca5fd5130d980d07398f3291d294202aefe3c2)
|
|
(This used to be commit 87f665a1d5ba74289974bf9d8f9441c162e6f1b1)
|
|
metze
(This used to be commit a7baf165c10c00096265b790d5362905c527806a)
|