summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
2011-06-09Ensure when creating a directory, if we make any changes due to inheritance ↵Jeremy Allison1-0/+12
parameters, we update the stat returned. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Thu Jun 9 00:46:39 CEST 2011 on sn-devel-104
2011-06-08Part 4 of bugfix for #8211 - "inherit owner = yes" doesn't interact ↵Jeremy Allison1-3/+2
correctly with "inherit permissions = yes" and POSIX ACLs We don't need to check mode bits as well as dev/ino to ensure we're in the same place.
2011-06-08Part 3 of bugfix for #8211 - "inherit owner = yes" doesn't interact ↵Jeremy Allison1-17/+43
correctly with "inherit permissions = yes" and POSIX ACLs When changing ownership on a new file make sure we must have a valid stat struct before making the inheritance calls (as they may look at it), and if we make changes we must have a valid stat struct after them. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Jun 8 03:07:04 CEST 2011 on sn-devel-104
2011-06-07Part 2 of bugfix for #8211 - "inherit owner = yes" doesn't interact ↵Jeremy Allison1-0/+2
correctly with "inherit permissions = yes" and POSIX ACLs When changing ownership on a new file make sure we also change the returned stat struct to have the correct uid.
2011-06-07Part 1 of bugfix for #8211 - "inherit owner = yes" doesn't interact ↵Jeremy Allison1-0/+2
correctly with "inherit permissions = yes" and POSIX ACLs When changing ownership on a new directory make sure we also change the returned stat struct to have the correct uid.
2011-06-06lib/util use modules_path(), data_path() and shlib_ext() from source3Andrew Bartlett1-1/+1
This brings these helpful utility functions in common, as they are not based on either loadparm system. (The 'modules dir' parameter from Samba4 will shortly be removed, so there is no loss in functionality) Andrew Bartlett
2011-06-01release_ip() is only used with CLUSTER_SUPPORT.Jeremy Allison1-1/+1
2011-06-01Move fd_close on error path to be identical to all other error paths.Jeremy Allison1-2/+1
Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Jun 1 22:30:03 CEST 2011 on sn-devel-104
2011-06-01TALLOC_FREE already checks for null.Jeremy Allison1-3/+1
2011-06-01Fix bug #8175 - smbd deadlock.Jeremy Allison1-27/+71
Force the open operation (which is the expensive one anyway) to acquire and release locks in a way compatible with the more common do_lock check. Jeremy.
2011-06-01lib/util/time.c: timeval_current_ofs_usecRusty Russell1-1/+1
Several places want "microseconds from current time", and several were simply handing "usecs" values which could be over a million. Using a helper to do this is safer and more readable. I didn't replace any obviously correct callers (ie. constants). I also renamed wait_nsec in source3/lib/util_sock.c; it's actually microseconds not nanoseconds (introduced with this code in Volker's 19b783cc Async wrapper for open_socket_out_send/recv). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-06-01lib/util/time.c: timeval_current_ofs_msecRusty Russell2-5/+2
Several places want "milliseconds from current time", and several were simply doing "msec * 1000" which can (and does in one place) result in a usec value over 1 a million. Using a helper to do this is safer and more readable. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2011-06-01s3-param prepare for some lp_ functions to return constAndrew Bartlett1-1/+1
2011-06-01Remove the char * argument from the SMB_VFS_GETWD() call. Now alwaysJeremy Allison1-8/+9
returns malloc'ed memory. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Jun 1 04:06:12 CEST 2011 on sn-devel-104
2011-05-31struct make "struct shadow_copy_data" its own talloc contextVolker Lendecke1-16/+5
2011-05-31s3: Remove SHADOW_COPY_DATA typedefVolker Lendecke2-3/+4
2011-05-31s3: Support shadow copy display over SMB2Volker Lendecke1-0/+121
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Tue May 31 12:53:10 CEST 2011 on sn-devel-104
2011-05-31s3-smbd Fix conn_msg.c: Cannot return in a void functionAndrew Bartlett1-1/+1
2011-05-31s3:smbd/proto.h: add _SMBD_PROTO_H_ guardMichael Adam1-0/+5
2011-05-31s3:smbd/proto.h: add GPL/Copyright headerMichael Adam1-0/+44
2011-05-31s3-globals Remove smbd_event_context() (use server_event_context())Andrew Bartlett19-61/+56
This has been a wrapper around server_event_context() for some time now, and removing this from dummmysmbd.c assists with library dependencies. Andrew Bartlett
2011-05-31s3-param split service.c into param and smbd componentsAndrew Bartlett1-226/+0
The dependency chain of find_service can't be satisfied sensibly outside smbd, so don't include this in the main 'param' subsystem. Also remove the duplicate find_service() and conn_snum_used() from dummysmbd.c: The WAF build does not need these dummies any more, but file. Andrew Bartlett
2011-05-31s3-smbd Split conn.c into 3 filesAndrew Bartlett5-232/+292
The idea with this split is to make it easier to handle dependencies, avoiding having the loadparm code depend on the global server variables, without resorting to dummy functions and linker tricks. conn_clear_vuid_cache() is brought in from uid.c to make it static Andrew Bartlett
2011-05-31s3-smbd provide struct smbd_server_connection * to conn_snum_usedAndrew Bartlett6-10/+15
This provides the 'sconn' parameter to this key functions, that is currently duplicated in dummysmbd.c, which causes duplicate symbol issues in the waf build. This has natrually caused a number of consequential changes across the codebase, includning not passing a messaging context into initial reload_services(): This causes problems because the global smbd_server_connection isn't yet set up, as there isn't a connection here, just the initial process. Andrew Bartlett
2011-05-30s3: Safely mark our sconn as smb2 if we have that protocolVolker Lendecke1-0/+2
Otherwise smbd will crash at an unclean exit. Without this conn_close_all will do a close_cnum() on all connection_struct's. In smb2, those are talloc children of the smbd_smb2_tcon's. sconn is talloc_free'ed after the conn_close_all, but the smbd_smb2_tcon destructor will still reference tcon->compat_conn, referencing then free'ed (and null'ed out) memory. Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Mon May 30 22:49:53 CEST 2011 on sn-devel-104
2011-05-30s3: Add ioctl code to smbd_smb2_ioctl_send debugVolker Lendecke1-2/+3
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Mon May 30 12:47:27 CEST 2011 on sn-devel-104
2011-05-29s3: Reply correctly to a bad nbt session requestVolker Lendecke1-1/+15
2011-05-27Fix bug #6911 - Kerberos authentication from vista to samba fails when ↵Jeremy Allison1-3/+25
security blob size is greater than 16 kB We were not correctly checking the output of asn1_start_tag(). asn1_start_tag() returns -1 and sets data->has_error if the remaining blob size is too short to contain the tag length. We were checking data->has_error and returning NT_STATUS_OK (to allow the second asn.1 parse to fail in that case). We should not be checking data->has_error in this case, but falling through to the code that already checks the length. Thanks to Jim for reproducing this for me. We don't get bitten by this as we announce a max buffer size of 16k, greater than Windows's 4k, which means that most krb5 spnego packets already fit. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Fri May 27 02:57:27 CEST 2011 on sn-devel-104
2011-05-20Fix bug 8133 - strange behavior for the file (whose filename first character ↵Jeremy Allison1-2/+3
is period ) in SMB2 case. When doing SMB2 renames, we need to match all filetypes (no attributes field in the SMB2 call). By default a file starting with a period is returned as FILE_ATTRIBUTE_HIDDEN in Samba. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Fri May 20 19:26:04 CEST 2011 on sn-devel-104
2011-05-20Optimization. If the attributes passed to can_rename() include both ↵Jeremy Allison1-5/+8
FILE_ATTRIBUTE_HIDDEN and FILE_ATTRIBUTE_SYSTEM then there's no point in reading the source DOS attribute, as we're not going to deny the rename on attribute match.
2011-05-20s3:smbd remove unused codeChristian Ambach1-11/+0
in the early CTDB days, the RELEASE_IP message was defined and some code was added to react on such a message to make smbd exit if the IP address it was using for the server socket is removed by CTDB. Later, it was discovered that we need to stop smbd immediately and logic was added to ctdb_conn to call release_ip() without going through the messaging system. So this code is not used and can be removed Autobuild-User: Christian Ambach <ambi@samba.org> Autobuild-Date: Fri May 20 16:18:24 CEST 2011 on sn-devel-104
2011-05-20s3: Fork the echo handler only after SMB1 negprot is doneVolker Lendecke3-7/+8
This enables activating the echo responder also if SMB2 is enabled, albeit it will only be used for SMB1 at this moment. Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Fri May 20 15:06:03 CEST 2011 on sn-devel-104
2011-05-20s3: Fix an uninitialized variableVolker Lendecke1-1/+1
2011-05-19Fix Bug 8152 - smbd crash in release_ip()Christian Ambach1-0/+3
release_ip() needs the private_data, but it was never saved away to feed it into release_ip() later Autobuild-User: Christian Ambach <ambi@samba.org> Autobuild-Date: Thu May 19 21:21:14 CEST 2011 on sn-devel-104
2011-05-18s3-lib Replace StrnCaseCmp() with strncasecmp_m()Andrew Bartlett1-1/+1
strncasecmp_m() never needs to call to talloc, and via next_codepoint() still has an ASCII fast-path bypassing iconv() calls. Andrew Bartlett
2011-05-18s3-lib Replace StrCaseCmp() with strcasecmp_m()Andrew Bartlett3-6/+6
strcasecmp_m() never needs to call to talloc, and via next_codepoint() still has an ASCII fast-path bypassing iconv() calls. Andrew Bartlett
2011-05-18Fix bug #8144 - touch /mnt/newfile fails to set timestamp with CIFS client.Jeremy Allison1-10/+15
The extra checks added for Windows correctness in our metadata changing paths to ensure the file handle has been opened with the correct access mask to allow FILE_WRITE_ATTRIBUTES etc. caused problems with the POSIX open code. The old POSIX open code maped O_RDONLY into FILE_READ, O_WRONLY into FILE_WRITE, and O_RDWR into FILE_READ|FILE_WRITE. This patch extends the mapping to add FILE_WRITE_ATTRIBUTES, FILE_READ_ATTRIBUTES and FILE_WRITE_EA, FILE_READ_EA to allow POSIX opens to set these values. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed May 18 02:22:32 CEST 2011 on sn-devel-104
2011-05-17s3: conn->sconn in smbd_server_connection_read/write_handlerVolker Lendecke1-9/+10
"struct smbd_server_connection" is called sconn elsewhere, avoid confusion Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Tue May 17 19:00:20 CEST 2011 on sn-devel-104
2011-05-16Fix the SMB2 showstopper, found by an extended torture test from Volker.Jeremy Allison1-3/+25
In the oplock refactoring, the algorithm underwent an unnoticed change. In 3.5.x stat_opens were silently (i.e. no explicit code had comments explaining this) ignored when looking for oplock breaks and share mode violations. After the refactoring, the function find_oplock_types() no longer ignored stat_open entries in the share mode table when looking for batch and exclusive oplocks. This patch adds two changes to find_oplock_types() to ignore the case where the incoming open request is a stat open being tested against existing opens, and also when the incoming open request is a non-stat open being tested against existing stat opens. Neither of these cause an oplock break or share mode violation. Thanks a *lot* to Volker, who persevered in reproducing this problem. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Mon May 16 22:38:20 CEST 2011 on sn-devel-104
2011-05-16Ensure we always write the correct incoming mid into the share modeJeremy Allison1-2/+4
table entries.
2011-05-13rpc_server: Always use rpc_pipe_open_interface()Simo Sorce1-8/+8
This way we can configure which rpc service we actually want to connect to. By default it uses an "embedded" interface and calls rpc_pipe_open_internal() Signed-off-by: Günther Deschner <gd@samba.org> Autobuild-User: Günther Deschner <gd@samba.org> Autobuild-Date: Fri May 13 14:40:26 CEST 2011 on sn-devel-104
2011-05-12s3: Slightly simplify smbd_smb2_request_next_vectorVolker Lendecke1-3/+5
Metze, Jeremy, please check!
2011-05-08s3-smbd: expose smbd_set_server_fd()Andrew Tridgell2-29/+29
this allows the fd to be setup by subsystems that want to use the s3 server core code Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org> Autobuild-User: Andrew Bartlett <abartlet@samba.org> Autobuild-Date: Sun May 8 12:01:13 CEST 2011 on sn-devel-104
2011-05-06s3-libsmb: move protos to libsmb/proto.hGünther Deschner4-0/+4
Guenther
2011-05-06s3: only include tdb headers where needed.Günther Deschner7-3/+10
Guenther
2011-05-06s3-smbd ntstatus_to_dos() pulls the DOS error codes out internallyAndrew Bartlett1-5/+4
This means we don't need to duplicate that logic here. Andrew Bartlett
2011-05-06s3-lib Remove unused dos error codes from errmap_unixAndrew Bartlett1-3/+0
This also makes unix_nt_errmap private to errmap_unix.c and errormap.c so the tables themselves cannot be duplicate symbols until merged. Andrew Bartlett
2011-05-06lib/util Move source3 tdb_wrap_open() into the common code.Andrew Bartlett1-0/+1
This #if _SAMBA_BUILD == 3 is very unfortunate, as it means that in the top level build, these options are not available for these databases. However, having two different tdb_wrap lists is a worse fate, so this will do for now. Andrew Bartlett
2011-05-06s3-auth: fixed bug with usernames longer than sizeof(char *)Andrew Tridgell1-3/+3
using sizeof(user) when user is "fstring user" as a C parameter actually returns sizeof(char *), which means that long usernames aren't allowed. Jeremy, you need a longer username :-) Cheers, Tridge Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-05-06More const fixes. Remove CONST_DISCARD.Jeremy Allison2-3/+3