1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-26 10:04:02 +03:00

3701 Commits

Author SHA1 Message Date
Michael Adam
dbfee4efbf This is a proposed patch for Bug #5023.
The three can_* access check functions in smbd/posix_acls.c that are used in
smbd/open.c and smbd/nttrans.c explicitly called check_posix_acl_group_access()

This lead to errors with nfsv4 acls (ZFS and GPFS).

This changes the can_* functions to get the nt_acl via VFS layer and call
se_access_check on that. It also removes check_posix_acl_group_access()
which has no more callers.

NOTE: The can_* functions should really not be in smbd/posix_acls.c but
in a separate file (I propose smbd/access.c).

Michael
(This used to be commit 6f961a23de745aba5dcd4585b731e651b8cbeef4)
2007-11-06 19:26:53 +01:00
Michael Adam
1fd78e226b Add a const.
Michael
(This used to be commit 7b582af2107bed3b864bb408b5c9bcce4b8e4c72)
2007-11-06 18:16:23 +01:00
Michael Adam
3fd2d4ed85 Add two const's.
Michael
(This used to be commit bf23c4ddff617dd3cd1e2d5cedb1b5c023356dc3)
2007-11-05 23:23:35 +01:00
Jeremy Allison
36441da424 Remove the horror that was the global smb_rw_error.
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-05 11:12:56 -08:00
Volker Lendecke
082da3d287 Fix a debug message
(This used to be commit a86849e4f9512b680f26010c297cec14251dafdd)
2007-11-05 03:40:18 +01:00
Volker Lendecke
ec1ecd92c9 Make load_registry_service return the share number
(This used to be commit 934964c90f39d588d2399f10e3738ab1b4e01290)
2007-11-05 02:45:14 +01:00
Jeremy Allison
58fbb512cc Forgot arg type.
Jeremy.
(This used to be commit 46f3b04ddea4c63c6b37c7038d4bbd2ee1c9ca0c)
2007-11-04 17:15:35 -08:00
Jeremy Allison
4721050df5 Don't believe len returned from read_smb_length_return_keepalive(),
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-04 15:38:43 -08:00
Jeremy Allison
5b0b4f23ef Remove most of the remaining globals out of lib/util_sock.c.
I have a plan for dealing with the remaining..... Watch
this space.
Jeremy.
(This used to be commit 963fc7685212689f02b3adcc05b4273ee5c382d4)
2007-11-03 23:20:10 -07:00
Jeremy Allison
25074433f4 I can't get away without a 'length' arg. :-).
Jeremy.
(This used to be commit 95d01279a5def709d0a5d5ae7224d6286006d120)
2007-11-03 18:41:26 -07:00
Jeremy Allison
6658165d5e Stop get_peer_addr() and client_addr() from using global
statics. Part of my library cleanups.
Jeremy.
(This used to be commit e848506c858bd16706c1d7f6b4b032005512b8ac)
2007-11-03 18:15:45 -07:00
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
329365684b Change the client library to write directly out of
the incoming buffer in the non-signed case. Speeds
up writes by over 10% or so. Complete the server
recvfile implementation.
Jeremy.
(This used to be commit 81ca5853b2475f123faab3b550f0a7b24ae3c208)
2007-11-02 12:21:34 -07:00
Jeremy Allison
414ab2ce46 Argggh. smblen doesn't include the +4, so my smb_doff calculations
shouldn't either :-).
Jeremy.
(This used to be commit c3de44b6b063e126095b30536fdcb643c70e395e)
2007-11-02 10:35:10 -07:00
Jeremy Allison
10500184bf Ensure we can't accidently do a pipe write with
unread bytes in the socket buffer.
Jeremy
(This used to be commit 84d22f7747126608b9460f9591bb5967d871b82d)
2007-11-01 22:42:21 -07:00
Jeremy Allison
bece9609cd Be careful and take care of the correct lengths in large
writeX calls.
Jeremy.
(This used to be commit 2d3ff9c502105f92720131355b41e48be8d656c2)
2007-11-01 22:24:39 -07:00
Jeremy Allison
c94b2898cd Ensure we detect a large writeX when using recvfile.
More changes needed to make the UNIX_LARGE_WRITEX_CAP
writes work (I'll add these tomorrow).
Jeremy.
(This used to be commit 1c71546b6152d2930b98f766311bbd161ee0ee4e)
2007-11-01 21:51:45 -07:00
Jeremy Allison
8bad80efb0 Add brackets so as not to break the POSIX caps return.
Jeremy.
(This used to be commit 47dbddcb5361caa30ee60cf4e15bb50d557d1191)
2007-11-01 18:30:02 -07:00
Jeremy Allison
0bb1a6ec2d Note when we're setting change time, not write time, and send
message accordingly. Apart from not supporting create time we
now pass the S4 RAW-NOTIFY torture.
Jeremy.
(This used to be commit 8a77f520fa03afa60eac2aaeab4babe7dd8db4f0)
2007-10-31 16:32:48 -07:00
Jeremy Allison
8f1f2f04c7 Fix some cases where file_set_dosmode was being passed
False instead of NULL. Fix more of the notifications to
be correct for Samba4 RAW-NOTIFY torture (we had missed
one when calling set_ea_dos_attribute().
Jeremy.
(This used to be commit 39d265375cf55eedddef2c4faa65398df73d5ed2)
2007-10-31 15:45:45 -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
133fad90b5 Make explicit draining the socket on RECVFILE. Add
capability for large UNIX write if not signing and
recvfile set. Cope with large UNIX write length on
incoming processing. Stevef - we can now test 1-16Mb
writes from CIFFS.
Jeremy.
(This used to be commit 8cf78776b0a44bd026cef3d74eb11cfb415f8303)
2007-10-31 14:01:35 -07:00
Jeremy Allison
ff82c0a037 Handle the disk full error case correctly.
Jeremy.
(This used to be commit b7088bb9c2a00d4717b9a7efa4bddc0c005f4efb)
2007-10-30 18:18:40 -07:00
Jeremy Allison
360c02328f Ensure we don't prematurely clean out the bytes read.
Jeremy.
(This used to be commit 247675695dfbff503b5792de62f8bb1567ea2327)
2007-10-30 17:42:02 -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
Stefan Metzmacher
851ef9e22f start smbd, nmbd and winbindd with the same startup message
at debug level 0.

metze
(This used to be commit 95f76ae7a52c6b22db22d03fed6b0848d2a61bee)
2007-10-30 15:44:27 +01:00
Volker Lendecke
6ca0d8124c Enable vfs objects = /full/path/to/object.so
Right now I'm testing a vfs object. I can't right now in make test, because
"vfs objects" assumes the .so files to be in $libdir/vfs. This patch parses the
module name out of the object name in case it starts with "/". The module name
is assumed to be the last path component's basename.
(This used to be commit 95cc019af775a6ab28ea602ad767fa54d7c86197)
2007-10-28 12:30:44 -04:00
Volker Lendecke
a97b33baad Two patches
Hi!

Can you check and push them?

Thanks,

Volker

From b488af5905e2dee12a1a72a3b40801ae5c26f24f Mon Sep 17 00:00:00 2001
From: Volker Lendecke <vl@sernet.de>
Date: Sat, 27 Oct 2007 14:20:09 +0200
Subject: [PATCH] Fix some warnings and errors
(This used to be commit e17d3e10e860c96b6d5208e5fe51e43b8e58c174)
2007-10-27 12:50:36 -07:00
Jeremy Allison
38c34ffd6b Ensure we don't terminate if we fail to bind to a socket,
only fail if we can't bind to any socket.
Jeremy.
(This used to be commit 2ec6224b552ef86fa1739c9e396c39c7ec6c76c6)
2007-10-25 14:11:35 -07:00
Jeremy Allison
fac788d6e2 Don't terminate on an invalid address family.
Jeremy.
(This used to be commit d04a8a6cdcc505e0244882a9abb7174eadbf81a7)
2007-10-24 16:11:01 -07:00
Jeremy Allison
f88b7a076b This is a large patch (sorry). Migrate from struct in_addr
to struct sockaddr_storage in most places that matter (ie.
not the nmbd and NetBIOS lookups). This passes make test
on an IPv4 box, but I'll have to do more work/testing on
IPv6 enabled boxes. This should now give us a framework
for testing and finishing the IPv6 migration. It's at
the state where someone with a working IPv6 setup should
(theorecically) be able to type :
smbclient //ipv6-address/share
and have it work.
Jeremy.
(This used to be commit 98e154c3125d5732c37a72d74b0eb5cd7b6155fd)
2007-10-24 14:16:54 -07:00
Gerald (Jerry) Carter
80b7bcb5fb Add test for "struct in6_addr" to the HAVE_IPV6 configure test.
Also make use of "if defined(HAVE_IPV6)" rather than testing for
AF_INET6 since this is not sufficient on HP-UX 11.11 to ensure
a working IPv6 implementation.
(This used to be commit 620785df4e57b72471ff0315e22e0d2f28a2b1a5)
2007-10-19 13:09:26 -07:00
Jeremy Allison
9a85533914 Fix the popt / bool issues. Some places we used BOOL
where we meant int. Fix this. Thanks to metze for
pointing this out.
Jeremy.
(This used to be commit 793a9d24a163cb6cf5a3a0aa5ae30e9f8cf4744a)
2007-10-19 11:38:36 -07:00
Stefan Metzmacher
7f82fbad50 fix startup of smbd, nmbd, winbindd
jra: POPT_ARG_VAL arguments need int values.
     I assume there're more places like this
     in the cmdline tools.

     Please fix this properly, as my commit is just
     a hack to get make test working again.

in samba4 we have a workaround for this see
smbd/server.c

metze
(This used to be commit 9cb1937fe8601e526b5c924930500e0a3b52abd5)
2007-10-19 10:34:06 +02: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
Jeremy Allison
cb5436bcc3 Add const to the get_peer_addr() and get_socket_addr()
calls. Use the IPv6 varient for get_peer_addr().
Jeremy.
(This used to be commit baf1f52e34ae2465a7a34be1065da29ed97e7bea)
2007-10-11 15:36:13 -07:00
Jeremy Allison
8e54530b52 Add start of IPv6 implementation. Currently most of this is avoiding
IPv6 in winbindd, but moves most of the socket functions that were
wrongly in lib/util.c into lib/util_sock.c and provides generic
IPv4/6 independent versions of most things. Still lots of work
to do, but now I can see how I'll fix the access check code.
Nasty part that remains is the name resolution code which is
used to returning arrays of in_addr structs.
Jeremy.
(This used to be commit 3f6bd0e1ec5cc6670f3d08f76fc2cd94c9cd1a08)
2007-10-10 18:25:16 -07:00
Jeremy Allison
39d30c5499 Fix valgrind-found memory overwrite.
(This used to be commit 183df4754b5f18419f4d8fca2c0fa19919174556)
2007-10-10 17:24:44 -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
Volker Lendecke
0ebab65706 r25534: Apply some const
Why? It moves these structs from the data into the text segment, so they
will never been copy-on-write copied. Not much, but as in German you say
"Kleinvieh macht auch Mist...."
(This used to be commit 0141e64ad4972232de867137064d0dae62da22ee)
2007-10-10 12:31:12 -05:00
Volker Lendecke
4b21570812 r25502: Fix bug 5006
Thanks to Joerg.Bernau at web.de
(This used to be commit 492977016fa66ce0e98a5bdd1c0f00eacdf13f0c)
2007-10-10 12:31:10 -05:00
Jelmer Vernooij
bb9f1e5146 r25498: Remove checks that are always true.
(This used to be commit 2f2bdfa0df758104a9a2fcafe49d6215d8753536)
2007-10-10 12:31:10 -05:00
Jeremy Allison
0d87820380 r25492: Start adding IPv6 compatible code to lib/util_sock.c and deal with
the ripple effects this causes. utmp has to change etc. Remove some
global varables and store address/port in the unexpected db.
Jeremy.
(This used to be commit 18c6a2211d9e25233d01715b3f78977edcd6d869)
2007-10-10 12:31:09 -05:00
Jeremy Allison
152a1f4a7d r25391: Fix bug #4978 : Store DOS Attributes fails when copying folders.
Jeremy.
(This used to be commit 713277391ae7f81f8545723c919865ff8c07ed86)
2007-10-10 12:31:01 -05:00
Volker Lendecke
aea0d4b9a0 r25327: Normalize the path we return for 'msdfs proxy'
We now accept both \\server\tmp and \server\tmp. There are other places
where this might be necessary, but at least the functionality is a bit
easier now.
(This used to be commit 25cc27df97e9eecb470f99ea934de12f2a0f4df9)
2007-10-10 12:31:00 -05:00
Volker Lendecke
e0402fa870 r25324: Fix "msdfs proxy"
Jeremy, please check!
(This used to be commit d4eddf88d20b09c450d4358d2ef1bc35736501ff)
2007-10-10 12:30:59 -05:00
Volker Lendecke
fb7ee0804c r25311: Patch from Heinrich Mislik <Heinrich.Mislik@univie.ac.at> to fix AIX
quotas.

Heinrich, I trust you on that, I don't even have compiled this :-)

Volker
(This used to be commit a8312a1d7b7e3ad00265279dd0640261beaa287d)
2007-10-10 12:30:58 -05:00
Jeremy Allison
e6228e2541 r25309: Volker's fix for bug #4984 - samba4 torture test
to follow. Ensure we don't prepend "./" as a root
directory - this is an invalid pathname for unix_convert().
Jeremy.
(This used to be commit f70ac2e25847e41ecf54ae9d66e3247e1996b152)
2007-10-10 12:30:58 -05:00
Michael Adam
30fc640057 r25286: Fix one more caller of unistr2_to_ascii() that passed
in -1 for maxlen.

Michael
(This used to be commit cd3d652d0d7609fc369ed0743c1fc54c87558438)
2007-10-10 12:30:57 -05:00
Volker Lendecke
ad97bcf813 r25184: Fix some C++ warnings and an uninitialized variable
(This used to be commit b64df8a3c504ab7749c21ffb26e4771a9a0a328f)
2007-10-10 12:30:49 -05:00