summaryrefslogtreecommitdiff
path: root/source3/smbd/process.c
AgeCommit message (Collapse)AuthorFilesLines
2009-02-07Fix memleaks in chain_reply for async requestsVolker Lendecke1-0/+2
2009-01-31Remove the global variable "chain_size"Volker Lendecke1-2/+24
2009-01-27s3:smbd: make kernel oplocks event drivenStefan Metzmacher1-74/+0
And use signal events for Linux oplocks. metze
2009-01-27s3:smbd: remove pointless respond_to_all_remaining_local_messages() functionStefan Metzmacher1-25/+0
This the process_kernel_oplock() function never response to messages, it only generates messages to ourself. metze
2009-01-27s3:smbd: use signal events for SIGTERM, SIGHUP and SIGCHLDStefan Metzmacher1-14/+51
metze
2009-01-27s3:smbd: move all code that handles a client connection into smbd_process()Stefan Metzmacher1-6/+218
metze
2009-01-25Fix chain_reply for pipe readsVolker Lendecke1-1/+11
The caller might have over-allocated reply->outbuf. Deal with that. Sorry, Günther, for giving you so much pain ... Volker
2009-01-22s3:smbd: we don't need to call message_dispatch() anymore it's event ↵Stefan Metzmacher1-23/+2
triggered now metze
2009-01-22s3:smbd: restructure kernel oplocks codeStefan Metzmacher1-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
2009-01-22s3: always call run_events() before and after sys_select()Stefan Metzmacher1-6/+4
And always setup the fd events. metze
2009-01-20"userdom_struct" does not need "full_name" anymore -- unusedVolker Lendecke1-2/+0
2009-01-20s3:smbd: call message_dispatch() before processing incoming PDUsStefan Metzmacher1-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
2009-01-16remove the old chain_reply codeVolker Lendecke1-214/+4
2009-01-16Correctly calculate the offset for read&xVolker Lendecke1-0/+19
2009-01-16Add a new implementation of chain_replyVolker Lendecke1-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.
2009-01-10Fix a type-punned errorVolker Lendecke1-1/+1
2009-01-10Fix a C++ warningVolker Lendecke1-2/+2
2009-01-09s3:smbd: handle incoming smb requests via event handlersStefan Metzmacher1-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
2009-01-08s3:smbd: move all globals and static variables in globals.[ch]Stefan Metzmacher1-31/+1
The goal is to move all this variables into a big context structure. metze
2009-01-05s3:events: change event_add_timed() prototype to match samba4Stefan Metzmacher1-10/+17
metze
2009-01-04Fix bug #6009 - Setting "min receivefile size = 1" breaks writes.Jeremy Allison1-1/+1
Jeremy.
2008-12-31Replace "goto again" by "return NT_STATUS_RETRY" in receive_message_or_smbVolker Lendecke1-11/+13
This gives lower-level routines the chance to indicate a retry condition
2008-12-19Remove the direct inbuf reference from construct_reply_common()Volker Lendecke1-8/+11
2008-11-08Make "construct_reply_common" staticVolker Lendecke1-1/+3
2008-11-05Fix the buildVolker Lendecke1-1/+1
2008-11-04Make "inbuf" a talloc child of "smb_request" for normal smb requestsVolker Lendecke1-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.
2008-11-04Add construct_reply_common_req wrapperVolker Lendecke1-0/+5
The goal is to remove the remaining direct calls to construct_reply_common.
2008-11-04Trigger (and fix) a bug in Samba3 making smbd an infinite data sourceVolker Lendecke1-0/+1
A deferred open directly followed by a ulogoffX makes smbd3 send an infinite stream of ERRinvuid replies :-(
2008-11-02Remove some inbuf references by adding "cmd" to smb_requestVolker Lendecke1-4/+3
2008-11-02Remove a bunch of direct inbuf references by adding "vwv" to smb_requestVolker Lendecke1-0/+1
2008-11-01Remove a bunch of direct inbuf references by adding "buf" to smb_requestVolker Lendecke1-0/+1
2008-11-01Add a "buflen" struct member to smb_requestVolker Lendecke1-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.
2008-11-01Remove unused extern declarationVolker Lendecke1-2/+0
2008-10-19"fn_new"->"fn" in smb_messages[], we got beyond that :-)Volker Lendecke1-3/+3
2008-10-19Use a direct compare instead of calling strncmp in valid_smb_headerVolker Lendecke1-1/+5
2008-10-19Move the global hosts_allow() check out of the processing loopVolker Lendecke1-19/+22
2008-10-14Use {u,}int64_t instead of SMB_BIG_{U,}INT.Jelmer Vernooij1-1/+1
2008-10-13Remove smb_np_structVolker Lendecke1-1/+0
2008-10-13Remove the chain_fsp globalVolker Lendecke1-1/+2
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)