summaryrefslogtreecommitdiff
path: root/source3/smbd/process.c
AgeCommit message (Collapse)AuthorFilesLines
2008-10-03Simply our main loop processing. A lot :-). Correctly use events for all the ↵Jeremy Allison1-184/+9
previous "special" cases. A step on the way to adding signals to the events and being able to merge the S3 event system with the S4 one. Jeremy.
2008-09-01Fix Coverity ID 587Volker Lendecke1-1/+1
The following test program prints "8" on 64-bit :-) static void print_size(const char lenbuf[4]) { printf("sizeof(lenbuf) = %d\n", (int)sizeof(lenbuf)); } int main(void) { const char lenbuf[4]; print_size(lenbuf); return 0; } Jeremy, please check :-) Volker (This used to be commit 9daea0ccfdda58450be3c9a9a94c016f5900c319)
2008-08-10fix smb_len calculation for chained requestsVolker Lendecke1-3/+5
I think chain_reply() is one of the most tricky parts of Samba. This recursion needs to go away, we need to sequentially walk the chain list. (This used to be commit af2b01d85188d2301580643f7e862e3e3988aadc)
2008-08-10Fix andx offset calculation for more than 2 chained requestsVolker Lendecke1-1/+7
Untested code is broken code.... Test follows later, it's quite an intrusive change to libsmb/ (This used to be commit 0ff16e8573f3c312f10fc723648319fa1f514ac0)
2008-06-28Factor out create_outbuf, creating an outbuf just given an inbufVolker Lendecke1-9/+20
(This used to be commit 50427cbf6345d3f671e9ea321089c4b4244df972)
2008-05-28Security fix for CVE-2008-1105: Boundary failure when parsing SMB responsesJeremy Allison1-3/+1
can result in a buffer overrun. Jeremy. (This used to be commit 23b825e9d2c74c5b940cf4d3aa56c18692259972)
2008-05-20Fix bug #5477 - recvfile code was broken.Jeremy Allison1-8/+4
Jeremy. (This used to be commit 830337f054a6c0646d85df33d9958e99283e727a)
2008-05-05Remove "userdom_struct user" from "struct user_struct"Volker Lendecke1-1/+7
(This used to be commit 420de035237bb08bc470c9eb820f3da2edaa6805)
2008-04-14Fix some "ignoring asprintf result" warningsVolker Lendecke1-5/+6
(This used to be commit 155d62ddfd3584d44a493c2aa1ea7f096bcff432)
2008-03-31Ok, final move of this code :-). I think I've found the correctJeremy Allison1-9/+9
place for it now where it will cause minimal disruption (only call the extra message_dispatch just before reading the next smb off the wire). Jeremy. (This used to be commit da2c19c481d0041872b4ce2f5105052077f3d3b8)
2008-03-31Move the message_dispatch() call after the check for errno onJeremy Allison1-11/+11
the select return. We don't want the call to message_dispatch to mess up the errno value. Jeremy. (This used to be commit 26a74d01bb2b53ffa5d296ff1c7d8b2b0d17831a)
2008-03-31Reduce the race condition in Samba4 in RAW-RENAME test. We rename a fileJeremy Allison1-0/+9
using trans2 setfileinfo on one connection, and then check the file name has changed on the other. In Samba we achieve this by sending a local message to the other process. This change causes us to re-scan for incoming messages after we've woken up from the select (which is cheap if there are no pending messages). This reduces the race significantly. Volker please review. Jeremy. (This used to be commit a7499e994aef743ea9c443f9a1618b262f6eda93)
2008-03-10Convert secrets_lock_trust_account_password to tallocVolker Lendecke1-4/+7
This is preparing the conversion of secrets.c to ctdb (This used to be commit 1307f0130c47b8d740d2b7afe7a5d8d1a655e2a2)
2008-02-05Fix a couple of "might be used uninitialized" warnings.Jeremy Allison1-2/+2
Jeremy. (This used to be commit b3ac8073a23afbba19d045302aa0700197c58bd5)
2008-02-02Remove smb_read_error globalVolker Lendecke1-7/+0
YESS :-) (This used to be commit 26771bdca0e6837db267f4db7907e489acd92fc6)
2008-02-02Remove dependency on get_srv_read_error() from main loopVolker Lendecke1-49/+20
(This used to be commit fad87968921eca0b5144760c412c5f599f9066f3)
2008-02-02Convert receive_message_or_smb to NTSTATUSVolker Lendecke1-36/+43
(This used to be commit 0f7d360a01baf02e251846118cb36e6a1cdcbeb9)
2008-02-02Make get_srv_read_error static to process.cVolker Lendecke1-1/+1
(This used to be commit 9e2947039ef70cab8bbd6027182d9c721eac3194)
2008-02-02read_socket_with_timeout_ntstatus->read_socket_with_timeoutVolker Lendecke1-3/+2
(This used to be commit 90554799afa42855c3e7b87dc632e67f0952f988)
2008-02-02Convert receive_smb_talloc to NTSTATUSVolker Lendecke1-33/+28
(This used to be commit ddbdd11a49fba9ec4834807dec385cdf3120ce00)
2008-02-02Convert receive_smb_raw_talloc to NTSTATUSVolker Lendecke1-61/+29
(This used to be commit 187707591ffa2668aecd4857cb2ef2cd20bd6b08)
2008-02-02Convert receive_smb_raw_talloc_partial_read to NTSTATUSVolker Lendecke1-59/+47
(This used to be commit 9a82350ba92bf5fc4f2968d5130bcb2118e7a981)
2008-02-02Convert read_packet_remainder to return NTSTATUSVolker Lendecke1-37/+44
(This used to be commit 667864d442ea7e1faed7b032315db8856fa91481)
2008-02-02Convert read_packet_remainder to use read_socket_with_timeout_ntstatusVolker Lendecke1-8/+20
(This used to be commit fff31f8f35ad26d67e78b9a71cfd35670aa9ac5f)
2008-02-02Convert read_smb_length_return_keepalive to return NTSTATUSVolker Lendecke1-11/+17
(This used to be commit 73a79a957a33a8761acf54598ce71e3604ecf3c5)
2008-01-27Remove an unused external referenceVolker Lendecke1-1/+0
(This used to be commit 147033b9dff7160ff324fa52aba1f054f962961b)
2008-01-23read_socket_with_timeout has timeout=0 handlingVolker Lendecke1-23/+6
(This used to be commit 7101026061c470ed962267b43ac0aa67cc761a64)
2008-01-23Remove two unused variablesVolker Lendecke1-1/+0
(This used to be commit f12ac1ecedd6634d8ccc54d8fce8382514e3322f)
2008-01-12Get the inbuf on talloc_tos()Volker Lendecke1-1/+1
(This used to be commit 883f7415769ad1e714f636e9d6fbd1f075e69d1e)
2008-01-09Make use of talloc_pool in the main codepaths. Remove the sub-contexts.Jeremy Allison1-1/+1
Jeremy. (This used to be commit bc932b8ad4396f76b71c43efe9a6346f89c3632c)
2008-01-04Now conn is part of smb_request, we don't need it asJeremy Allison1-2/+2
an extra parameter. This cleans up quite a few places we were passing it around without needing it. Jeremy. (This used to be commit 8f36def18e9f980e8db522e1de41e80cfd5f466e)
2008-01-04Refactor the crypto code after a very helpful conversationJeremy Allison1-60/+113
with Volker. Mostly making sure we have data on the incoming packet type, not stored in the smb header. Jeremy. (This used to be commit c4e5a505043965eec77b5bb9bc60957e8f3b97c8)
2007-12-27Add the capability to set "smb encrypt = required"Jeremy Allison1-0/+10
on a share (or global) and have the server reply with ACCESS_DENIED for all non-encrypted traffic (except that used to query encryption requirements and set encryption state). Jeremy. (This used to be commit d241bfa57729bb934ada6beabf842a2ca7b4f8a2)
2007-12-26Add SMB encryption. Still fixing client decrypt butJeremy Allison1-3/+53
negotiation works. Jeremy. (This used to be commit d78045601af787731f0737b8627450018902b104)
2007-12-18Remove last_message completely as it's no longer used.Jeremy Allison1-3/+0
Jeremy. (This used to be commit c378c3edc1197d46c5d6eb2bcabbf9e774c03ffc)
2007-11-11Three more pstring removals.Jeremy Allison1-3/+9
Jeremy. (This used to be commit c15819b75751a1e15cfed2ef94dae10ee72d769c)
2007-11-09Fix some warningsVolker Lendecke1-1/+1
(This used to be commit 0a1f524e8cce9bbe4fd10467c1f64f7a8862d298)
2007-11-05Remove the horror that was the global smb_rw_error.Jeremy Allison1-21/+38
Each cli struct has it's own local copy of this variable, so use that in client code. In the smbd server, add one static to smbd/proccess.c and use that inside smbd. Fix a bunch of places where smb_rw_error could be set by calling read_data() in places where we weren't reading from the SMB client socket (ie. winbindd). Jeremy. (This used to be commit 255c2adf7b6ef30932b5bb9f142ccef4a5d3d0db)
2007-11-04Forgot arg type.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 46f3b04ddea4c63c6b37c7038d4bbd2ee1c9ca0c)
2007-11-04Don't believe len returned from read_smb_length_return_keepalive(),Jeremy Allison1-1/+1
it may be a UNIX large writeX (which wraps len in that case). Stevef this should fix your 128k write bug. Jeremy. (This used to be commit de2ebffa3c99ed28a3868fd956ef45629ca855b6)
2007-11-03Remove most of the remaining globals out of lib/util_sock.c.Jeremy Allison1-1/+1
I have a plan for dealing with the remaining..... Watch this space. Jeremy. (This used to be commit 963fc7685212689f02b3adcc05b4273ee5c382d4)
2007-11-03I can't get away without a 'length' arg. :-).Jeremy Allison1-1/+2
Jeremy. (This used to be commit 95d01279a5def709d0a5d5ae7224d6286006d120)
2007-11-03Stop get_peer_addr() and client_addr() from using globalJeremy Allison1-1/+4
statics. Part of my library cleanups. Jeremy. (This used to be commit e848506c858bd16706c1d7f6b4b032005512b8ac)
2007-11-03Remove the smb_read_error global variable and replaceJeremy Allison1-32/+19
it with accessor functions. "One global or pstring a day...." :-). Jeremy. (This used to be commit d50d14c300abc83b7015718ec48acc8b3227a273)
2007-10-31Fix vfstest link - move socket calls into smbd/process.cJeremy Allison1-0/+288
not smbd/server.c Jeremy (This used to be commit 8fbefe18a2dc23adb0ebe488cfb37ab4a382207d)
2007-10-30Add new parameter, "min receivefile size" (by default setJeremy Allison1-17/+45
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-18RIP BOOL. Convert BOOL -> bool. I found a few interestingJeremy Allison1-9/+9
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-10[GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.Gerald (Jerry) Carter1-15/+14
(This used to be commit 5c6c8e1fe93f340005110a7833946191659d88ab)
2007-10-10r25117: The mega-patch Jerry was waiting for. Remove all pstrings fromJeremy Allison1-1/+1
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-10r24809: Consolidate the use of temporary talloc contexts.Volker Lendecke1-6/+4
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)