1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-17 02:05:21 +03:00

674 Commits

Author SHA1 Message Date
Jeremy Allison
73d4079680 Remove the smb_read_error global variable and replace
it with accessor functions. "One global or pstring a day...." :-).
Jeremy.
(This used to be commit d50d14c300abc83b7015718ec48acc8b3227a273)
2007-11-03 15:12:42 -07:00
Jeremy Allison
695c4a7a74 Fix vfstest link - move socket calls into smbd/process.c
not smbd/server.c
Jeremy
(This used to be commit 8fbefe18a2dc23adb0ebe488cfb37ab4a382207d)
2007-10-31 14:24:52 -07:00
Jeremy Allison
c3250149e1 Add new parameter, "min receivefile size" (by default set
to zero). If non-zero, writeX calls greater than this
value will be left in the socket buffer for later handling
with recvfile (or userspace equivalent). Definition of
recvfile for your system is left as an exercise for
the reader (I'm working on getting splice working :-).
Jeremy.
(This used to be commit 11c03b75ddbcb6e36b231bb40a1773d1c550621c)
2007-10-30 16:22:24 -07:00
Jeremy Allison
30191d1a57 RIP BOOL. Convert BOOL -> bool. I found a few interesting
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3cbb3e5fa6a86be60f34fe340a3ca71f)
2007-10-18 17:40:25 -07:00
Gerald (Jerry) Carter
e5a951325a [GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.
(This used to be commit 5c6c8e1fe93f340005110a7833946191659d88ab)
2007-10-10 15:34:30 -05:00
Jeremy Allison
12f61e09d9 r25117: The mega-patch Jerry was waiting for. Remove all pstrings from
the main server code paths. We should now be able to cope with
paths up to PATH_MAX length now.
Final job will be to add the TALLOC_CTX * parameter to
unix_convert to make it explicit (for Volker).
Jeremy.
(This used to be commit 7f0db75fb0f24873577dcb758a2ecee74fdc4297)
2007-10-10 12:30:41 -05:00
Volker Lendecke
929e1d9920 r24809: Consolidate the use of temporary talloc contexts.
This adds the two functions talloc_stackframe() and talloc_tos().

 * When a new talloc stackframe is allocated with talloc_stackframe(), then
 * the TALLOC_CTX returned with talloc_tos() is reset to that new
 * frame. Whenever that stack frame is TALLOC_FREE()'ed, then the reverse
 * happens: The previous talloc_tos() is restored.
 *
 * This API is designed to be robust in the sense that if someone forgets to
 * TALLOC_FREE() a stackframe, then the next outer one correctly cleans up and
 * resets the talloc_tos().

The original motivation for this patch was to get rid of the
sid_string_static & friends buffers. Explicitly passing talloc context
everywhere clutters code too much for my taste, so an implicit
talloc_tos() is introduced here. Many of these static buffers are
replaced by a single static pointer.

The intended use would thus be that low-level functions can rather
freely push stuff to talloc_tos, the upper layers clean up by freeing
the stackframe. The more of these stackframes are used and correctly
freed the more exact the memory cleanup happens.

This patch removes the main_loop_talloc_ctx, tmp_talloc_ctx and
lp_talloc_ctx (did I forget any?)

So, never do a

tmp_ctx = talloc_init("foo");

anymore, instead, use

tmp_ctx = talloc_stackframe()

:-)

Volker
(This used to be commit 6585ea2cb7f417e14540495b9c7380fe9c8c717b)
2007-10-10 12:30:24 -05:00
Volker Lendecke
b578db69e9 r24702: Remove the old API pointers
(This used to be commit 17df313db42199e26d7d2044f6a1d845aacd1a90)
2007-10-10 12:30:14 -05:00
Jeremy Allison
a662a62e5a r24500: Add check that bcc is correct in an incoming packet.
Jeremy.
(This used to be commit 267a0ac48d358e1bd10d92238352ca3d867a58d4)
2007-10-10 12:29:52 -05:00
Jeremy Allison
ed70bc0d8e r24468: Don't forget the +4 for length :-).
Jeremy.
(This used to be commit 4d01e0b7443aa4e4d450d705df5762d801172809)
2007-10-10 12:29:50 -05:00
Jeremy Allison
a1f593cd73 r24467: Do range checking on incoming smb request.
Jeremy.
(This used to be commit dbd58dd647279def1681d88701e41d8a738c680a)
2007-10-10 12:29:50 -05:00
Volker Lendecke
716e01d97e r24457: Convert reply_tcon to the new API
Jeremy, I really apologize for doing this, but I just wanted to enjoy
converting the last SMB call :-)

I've left one little task for you there, I'm not certain that checking
the inbuf length is correct here.

Volker
(This used to be commit 1e08fddafda11961f8855423b29c1f8a9a6b4457)
2007-10-10 12:29:49 -05:00
Volker Lendecke
24f42c5cef r24453: Remove the read and write bmpx calls
Talked to both Tridge and Jeremy about this, Tridge said that there is a
special error message persuading OS/2 to fall back to other methods.
The calls now checked in always return the error message we used to
return when "read bmpx = False" was set (the default): ERRSRV, ERRuseSTD.

If someone has a reproducable test case where this is really needed, we
can always dig it up from version control and convert it to the new API.
But that time without that silly parameter, and with a torture test case
for "make test" please :-)

Volker
(This used to be commit d941aae2dfd11609e807bf4ce712571a2e354627)
2007-10-10 12:29:49 -05:00
Jeremy Allison
2823bf10b5 r24445: Convert SMBwritebraw. No test suite unfortunately.... I need to write one for this.
Jeremy
(This used to be commit edc17dfcbd21cccaffb76f4ae67fe4b06520f1a9)
2007-10-10 12:29:48 -05:00
Volker Lendecke
527905a09a r24444: Convert reply_find[n]close to the new API
(This used to be commit 6af85953465789594342f2d199ef5d29462cf34f)
2007-10-10 12:29:48 -05:00
Volker Lendecke
5edcc342c6 r24443: Convert reply_search/fclose to the new API
(This used to be commit a8a33c377e38046b4103cf1d59032b97ab6bac9a)
2007-10-10 12:29:48 -05:00
Volker Lendecke
f93b093d5f r24442: Convert reply_copy to the new API
(This used to be commit 0cb00c54750837ab2d2dc12e4947fedb7d38e878)
2007-10-10 12:29:48 -05:00
Volker Lendecke
9c2bfffece r24441: Convert reply_ioctl to the new API
(This used to be commit a5af7ebb7f1d869659fbab187652e68ec4fafbb8)
2007-10-10 12:29:48 -05:00
Volker Lendecke
c5572072e5 r24440: Convert the reply_sendXX functions to the new API
(This used to be commit a64bc31098de8694b79eeafd3a226cf519700707)
2007-10-10 12:29:48 -05:00
Volker Lendecke
90741da80b r24439: Convert reply_get/setattrE to the new API
(This used to be commit 6b0ad071d85ddd8fbf24386db11688bde49baf81)
2007-10-10 12:29:47 -05:00
Volker Lendecke
05fafc1df2 r24436: Convert reply_lockread/writeunlock to the new API
(This used to be commit 1b6add251ca1db565a03407db30884132dd93e7d)
2007-10-10 12:29:47 -05:00
Volker Lendecke
2ea14d4e98 r24433: Convert reply_ntrename to the new API
(This used to be commit 42b07a52b9f4fe147426e9156958cb4d33691678)
2007-10-10 12:29:46 -05:00
Volker Lendecke
591669ba06 r24431: Convert the reply_printXX calls to the new API
(This used to be commit e528479f56bc936cc60eb95c9738a48de48dbd05)
2007-10-10 12:29:46 -05:00
Volker Lendecke
4a989dac81 r24430: Convert reply_writeclose to the new API
(This used to be commit 6def2ee03bb3510f000b1977c4d5293cad4ae364)
2007-10-10 12:29:46 -05:00
Volker Lendecke
0f73d64f7d r24428: Convert reply_unlock to the new API
(This used to be commit 01c7426fc0e2af6a955dcb37111ca439fc913d5f)
2007-10-10 12:29:45 -05:00
Volker Lendecke
ca70ea9310 r24427: Convert reply_lock to the new API
(This used to be commit 212f43ddeaa6369e5437ed3915eb066a37bc9014)
2007-10-10 12:29:45 -05:00
Volker Lendecke
4c7212b4e4 r24426: Convert reply_read to the new API
(This used to be commit 30aada0ef8e16ce94035039b63ab140d158009d9)
2007-10-10 12:29:45 -05:00
Volker Lendecke
7c25bf4511 r24425: Convert reply_write to the new API
(This used to be commit 244965f7b67becb85774311e6ce84318d554384d)
2007-10-10 12:29:45 -05:00
Volker Lendecke
fe502551c3 r24423: Convert reply_lseek to the new API
(This used to be commit bd228853863ce5b4b9b974347c50c956d7f2e055)
2007-10-10 12:29:44 -05:00
Volker Lendecke
dee4ab1533 r24422: Convert reply_ctemp to the new API
(This used to be commit 3cc22fd74f0ffc72f4340a963b4eca7178be2192)
2007-10-10 12:29:44 -05:00
Volker Lendecke
06ed827edf r24417: Convert reply_setatr to the new API
(This used to be commit 56bab5ea4cbcf8e46101053bd68f66691fd737c5)
2007-10-10 12:29:43 -05:00
Volker Lendecke
73b3ae9c55 r24415: Convert reply_getatr to the new API
(This used to be commit 1a08b97a933e25362707cb0d8ba09d733af4cbbf)
2007-10-10 12:29:43 -05:00
Volker Lendecke
5fe4384cd9 r24414: Convert reply_mv to the new API
(This used to be commit fa341e4840d422cee389c06112e0b2df43a31f45)
2007-10-10 12:29:42 -05:00
Volker Lendecke
2da44a2dee r24412: Convert reply_open to the new API
(This used to be commit 394987f5224086cb379ea8d0364924679b8a0214)
2007-10-10 12:29:42 -05:00
Volker Lendecke
29df25351d r24406: Push reply_prep_legacy into reply_lockingX
(This used to be commit bce87ebdc00b9086dcdcc55442b57b92345971ac)
2007-10-10 12:29:41 -05:00
Volker Lendecke
ae89ba48ec r24404: Remove get_OutBuffer usage from blocking.c
(This used to be commit cb8fab5663db2cb408e1b85a7287d3670b09d503)
2007-10-10 12:29:41 -05:00
Jeremy Allison
d701a47c73 r24387: Convert readbraw to the new api. Volker, keep checking in
your patches please :-). I'll work on SMBreadBmpx tomorrow.
Jeremy.
(This used to be commit 27e183afa8d23dca6aada1f3810dc53aa8c55ccd)
2007-10-10 12:29:38 -05:00
Jeremy Allison
5cc0a6b43c r24386: Piss off Volker (not deliberately) by checking in a reply_mknew -> conversion.
Sorry vl, remove one of your 15 patches :-).
Jeremy.
(This used to be commit a7648ed9d40d6f61362e1488dc30216363870694)
2007-10-10 12:29:38 -05:00
Volker Lendecke
6bee410431 r24358: Push reply_prep_legacy into reply_nttrans[s]
(This used to be commit 197c2310792965f94d66ad7c8016a1594945bdf8)
2007-10-10 12:29:36 -05:00
Volker Lendecke
2fb27fcb69 r24349: For large read&x we need more than 64k of outbuf.
(This used to be commit f7e2eec35f7457ec70d75ef099b34f83c9dfd654)
2007-10-10 12:29:32 -05:00
Volker Lendecke
d90f6fa1bd r24328: Restore chain_reply error handling
Get the whole smb header from the second chained function, in particular
the error fields
(This used to be commit 0eb831ca0eadb725242cb4ad75eb7008a5c18bf2)
2007-10-10 12:29:30 -05:00
Volker Lendecke
26f6826dfc r24327: First round of fixes to chain_reply
The argument to smb_setlen does not contain the nbt header of 4 bytes

The chained function might allocate outbuf itself (as now happens with
reply_read_and_X). This would erroneously overwrite the caller's outbuf.
Give it an outbuf pointer of it's own
(This used to be commit f923bba90866af14b32c0d0ab58acc00a5939fbb)
2007-10-10 12:29:29 -05:00
Volker Lendecke
61ee2d3720 r24322: Wrap reply_read_and_X in reply_prep_legacy
(This used to be commit 7926b5dfb8d05ad2fe40c3f7658a492f0450e505)
2007-10-10 12:29:28 -05:00
Volker Lendecke
c898c51984 r24318: Print a prominent warning when reply_prep_legacy is called
This is a temporary function anyway
(This used to be commit 9269e3d5882e97d1c884df6511fa6d63a7b1cfcd)
2007-10-10 12:29:27 -05:00
Volker Lendecke
b0dc209c19 r24271: Push reply_prep_legacy into reply_write_and_X
(This used to be commit 607e7d2447bf19eea872a3a4d1ad499a53f0a935)
2007-10-10 12:29:24 -05:00
Volker Lendecke
1d3c1de502 r24231: Push allocating InBuffer/OutBuffer into reply_transs
(This used to be commit 74ae19cca6dd15b65deffbf464cfd0e485da8611)
2007-10-10 12:29:18 -05:00
Volker Lendecke
133ef281c0 r24229: Push allocating InBuffer/OutBuffer into reply_transs
(This used to be commit 39a7809aa4c34bb26178589245c419df44796e22)
2007-10-10 12:29:18 -05:00
Volker Lendecke
5d2031915e r24225: Convert reply_flush to the new API
(This used to be commit f843c02f0794964eba02ab983f9c0701801f415c)
2007-10-10 12:29:18 -05:00
Volker Lendecke
c847b2afe7 r24223: Convert reply_echo to the new API
(This used to be commit 4863ff2899419e791ed0e340821072d004fb1d17)
2007-10-10 12:29:17 -05:00
Volker Lendecke
1d8851f4c7 r24159: Convert reply_transs2 to the new API
(This used to be commit a55a4d71ffe9ff1395e02f8bb3ad88fe5132fe99)
2007-10-10 12:29:15 -05:00