summaryrefslogtreecommitdiffstats
path: root/source3/smbd/process.c
Commit message (Collapse)AuthorAgeFilesLines
* s3:smbd: if we allow trans2 on the IPC$ share, then we have to allow transs2 ↵Stefan Metzmacher2009-04-151-1/+1
| | | | | | | | | | too. Otherwise we'll confuse the client signing engine, when we reply an error to each transs2. metze (cherry picked from commit 7716ad68a8d859ac3651c4eb559b6e45d98566db) (cherry picked from commit 1d11417c71ebcb80851c8b77e9f3102ee9b592f8)
* make receive_smb_raw_talloc more readableTim Prouty2009-02-161-4/+4
|
* Noted by Vericode analysis. Correctly use chroot().Jeremy Allison2009-02-131-1/+5
| | | | Jeremy.
* S3: New module interface for SMB message statistics gatheringtodd stecher2009-02-091-16/+45
| | | | | | | This changelist allows for the addition of custom performance monitoring modules through smb.conf. Entrypoints in the main message processing code have been added to capture the command, subop, ioctl, identity and message size statistics.
* Fix memleaks in chain_reply for async requestsVolker Lendecke2009-02-071-0/+2
|
* Remove the global variable "chain_size"Volker Lendecke2009-01-311-2/+24
|
* s3:smbd: make kernel oplocks event drivenStefan Metzmacher2009-01-271-74/+0
| | | | | | And use signal events for Linux oplocks. metze
* s3:smbd: remove pointless respond_to_all_remaining_local_messages() functionStefan Metzmacher2009-01-271-25/+0
| | | | | | | This the process_kernel_oplock() function never response to messages, it only generates messages to ourself. metze
* s3:smbd: use signal events for SIGTERM, SIGHUP and SIGCHLDStefan Metzmacher2009-01-271-14/+51
| | | | metze
* s3:smbd: move all code that handles a client connection into smbd_process()Stefan Metzmacher2009-01-271-6/+218
| | | | metze
* Fix chain_reply for pipe readsVolker Lendecke2009-01-251-1/+11
| | | | | | | | The caller might have over-allocated reply->outbuf. Deal with that. Sorry, Günther, for giving you so much pain ... Volker
* s3:smbd: we don't need to call message_dispatch() anymore it's event ↵Stefan Metzmacher2009-01-221-23/+2
| | | | | | triggered now metze
* s3:smbd: restructure kernel oplocks codeStefan Metzmacher2009-01-221-38/+6
| | | | | | | | This converts the irix oplocks code to use a fd event and removes the last special case for file descriptors for the main sys_select(). metze
* s3: always call run_events() before and after sys_select()Stefan Metzmacher2009-01-221-6/+4
| | | | | | And always setup the fd events. metze
* "userdom_struct" does not need "full_name" anymore -- unusedVolker Lendecke2009-01-201-2/+0
|
* s3:smbd: call message_dispatch() before processing incoming PDUsStefan Metzmacher2009-01-201-0/+6
| | | | | | | This is a hack to fix races which happen with the RAW-RENAME and RAW-OPLOCK tests. We should try to remove it later. metze
* remove the old chain_reply codeVolker Lendecke2009-01-161-214/+4
|
* Correctly calculate the offset for read&xVolker Lendecke2009-01-161-0/+19
|
* Add a new implementation of chain_replyVolker Lendecke2009-01-161-0/+217
| | | | | | This the global variable "orig_inbuf" in the old chain_reply code. This global variable was one of the reasons why we had the silly restriction to not allow async requests within a request chain.
* Fix a type-punned errorVolker Lendecke2009-01-101-1/+1
|
* Fix a C++ warningVolker Lendecke2009-01-101-2/+2
|
* s3:smbd: handle incoming smb requests via event handlersStefan Metzmacher2009-01-091-108/+155
| | | | | | | | | | We use a fd event and receive incoming smb requests when the fd becomes readable. It's not completely nonblocking yet, but it should behave like the old code. We use timed events to trigger retries for deferred open calls. metze
* s3:smbd: move all globals and static variables in globals.[ch]Stefan Metzmacher2009-01-081-31/+1
| | | | | | The goal is to move all this variables into a big context structure. metze
* s3:events: change event_add_timed() prototype to match samba4Stefan Metzmacher2009-01-051-10/+17
| | | | metze
* Fix bug #6009 - Setting "min receivefile size = 1" breaks writes.Jeremy Allison2009-01-041-1/+1
| | | | Jeremy.
* Replace "goto again" by "return NT_STATUS_RETRY" in receive_message_or_smbVolker Lendecke2008-12-311-11/+13
| | | | This gives lower-level routines the chance to indicate a retry condition
* Remove the direct inbuf reference from construct_reply_common()Volker Lendecke2008-12-191-8/+11
|
* Make "construct_reply_common" staticVolker Lendecke2008-11-081-1/+3
|
* Fix the buildVolker Lendecke2008-11-051-1/+1
|
* Make "inbuf" a talloc child of "smb_request" for normal smb requestsVolker Lendecke2008-11-041-3/+2
| | | | | | This is necessary if we want to keep the whole smb_request for deferred ops. The explicit settings of req->inbuf will be removed once all those deferring operations are converted to store the whole request and not just the inbuf.
* Add construct_reply_common_req wrapperVolker Lendecke2008-11-041-0/+5
| | | | The goal is to remove the remaining direct calls to construct_reply_common.
* Trigger (and fix) a bug in Samba3 making smbd an infinite data sourceVolker Lendecke2008-11-041-0/+1
| | | | | A deferred open directly followed by a ulogoffX makes smbd3 send an infinite stream of ERRinvuid replies :-(
* Remove some inbuf references by adding "cmd" to smb_requestVolker Lendecke2008-11-021-4/+3
|
* Remove a bunch of direct inbuf references by adding "vwv" to smb_requestVolker Lendecke2008-11-021-0/+1
|
* Remove a bunch of direct inbuf references by adding "buf" to smb_requestVolker Lendecke2008-11-011-0/+1
|
* Add a "buflen" struct member to smb_requestVolker Lendecke2008-11-011-2/+3
| | | | | | This removes some explicit inbuf references and also removes a pointless check in reply_echo. The buflen can never be more than 64k, this is just a 16 bit value.
* Remove unused extern declarationVolker Lendecke2008-11-011-2/+0
|
* "fn_new"->"fn" in smb_messages[], we got beyond that :-)Volker Lendecke2008-10-191-3/+3
|
* Use a direct compare instead of calling strncmp in valid_smb_headerVolker Lendecke2008-10-191-1/+5
|
* Move the global hosts_allow() check out of the processing loopVolker Lendecke2008-10-191-19/+22
|
* Use {u,}int64_t instead of SMB_BIG_{U,}INT.Jelmer Vernooij2008-10-141-1/+1
|
* Remove smb_np_structVolker Lendecke2008-10-131-1/+0
|
* Remove the chain_fsp globalVolker Lendecke2008-10-131-1/+2
|
* Simply our main loop processing. A lot :-). Correctly use events for all the ↵Jeremy Allison2008-10-031-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.
* Fix Coverity ID 587Volker Lendecke2008-09-011-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)
* fix smb_len calculation for chained requestsVolker Lendecke2008-08-101-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)
* Fix andx offset calculation for more than 2 chained requestsVolker Lendecke2008-08-101-1/+7
| | | | | | Untested code is broken code.... Test follows later, it's quite an intrusive change to libsmb/ (This used to be commit 0ff16e8573f3c312f10fc723648319fa1f514ac0)
* Factor out create_outbuf, creating an outbuf just given an inbufVolker Lendecke2008-06-281-9/+20
| | | | (This used to be commit 50427cbf6345d3f671e9ea321089c4b4244df972)
* Security fix for CVE-2008-1105: Boundary failure when parsing SMB responsesJeremy Allison2008-05-281-3/+1
| | | | | | can result in a buffer overrun. Jeremy. (This used to be commit 23b825e9d2c74c5b940cf4d3aa56c18692259972)
* Fix bug #5477 - recvfile code was broken.Jeremy Allison2008-05-201-8/+4
| | | | | Jeremy. (This used to be commit 830337f054a6c0646d85df33d9958e99283e727a)