| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Summary:
Specially crafted SMB requests on
authenticated SMB connections can send smbd
into a 100% CPU loop, causing a DoS on the
Samba server.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
===========================================================
== Subject: Misconfigured /etc/passwd file may share folders unexpectedly
==
== CVE ID#: CVE-2009-2813
==
== Versions: All versions of Samba later than 3.0.11
==
== Summary: If a user in /etc/passwd is misconfigured to have
== an empty home directory then connecting to the home
== share of this user will use the root of the filesystem
== as the home directory.
===========================================================
|
|
|
|
| |
(cherry picked from commit a15c816ba5fd4dcedd68beb1fcb0540de325c1cb)
|
|
|
|
|
|
|
|
|
|
|
| |
Was missing case of "If file exists open. If file doesn't exist error."
Damn damn damn. CIFSFS client will have to have fallback cases
for this error for a long time.
Make test for open modes more robust against other bits.
Jeremy.
(cherry picked from commit ac11d94f36e1878f3f5d86f2e7197fd8ecdd196b)
|
|
|
|
|
| |
Jeremy.
(cherry picked from commit 3086400b61ee3dda639c5520b539d4ff76e4d9c5)
|
|
|
|
| |
(cherry picked from commit 04fc826efb290ba4b1f173752efb37a4b87281f2)
|
|
|
|
|
|
| |
to ourselves unless that was passed in.
Jeremy.
(cherry picked from commit 60289187a91e23787be581b824076651230245b2)
|
|
|
|
|
|
|
|
|
| |
ACLs.
If the chown succeeds then the ACL set should also. Ensure this is the case
(refactor some of this code to make it simpler to read also).
Jeremy.
(cherry picked from commit 08836722e63cfd6cfd88059dd3f10d98474f49cb)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Simo is completely correct. We should be doing the chown *first*, and fail the
ACL set if this fails. The long standing assumption I made when writing the
initial POSIX ACL code was that Windows didn't control who could chown a file
in the same was as POSIX. In POSIX only root can do this whereas I wasn't sure
who could do this in Windows at the time (I didn't understand the privilege
model). So the assumption was that setting the ACL was more important (early
tests showed many failed ACL set's due to inability to chown). But now we have
privileges in smbd, and we must always fail an ACL set when we can't chown
first. The key that Simo noticed is that the CREATOR_OWNER bits in the ACL
incoming are relative to the *new* owner, not the old one. This is why the old
user owner disappears on ACL set - their access was set via the USER_OBJ in the
creator POSIX ACL and when the ownership changes they lose their access.
Patch is simple - just ensure we do the chown first before evaluating the
incoming ACL re-read the owners. We already have code to do this it just wasn't
rigorously being applied.
Jeremy.
(cherry picked from commit 9a95b6cac2dea88cb9e9b428292dfca9d1e3e801)
|
| |
|
|
|
|
|
| |
Jeremy.
(cherry picked from commit 974262ba3e8226ec9805d38e602ec8d083e44f72)
|
|
|
|
|
| |
krb5 refresh chain fixes.
(cherry picked from commit 194425f8074e2cfd5893499099614666f8d8ecd9)
|
|
|
|
|
| |
Jeremy.
(cherry picked from commit 7917038db0277d16e5284ee261a4913e278e5ac7)
|
|
|
|
|
|
| |
(mtab.c, fix build).
Jeremy.
(cherry picked from commit 680e4c398c79867f8a7ad40e9c2cd9c401922edd)
|
|
|
|
|
|
|
|
| |
that will have to
be fixed another way.
Jeremy.
(cherry picked from commit 649572c454328b81714b86d3f99f730bf61625e0)
|
|
|
|
|
|
| |
multibyte character.
(cherry picked from commit 92f3ba8e20bd4a5a2afdd13feb5519d723784274)
|
|
|
|
| |
(cherry picked from commit cc97e2a0d51f52a79982ac265f073d3829c1357a)
|
|
|
|
|
| |
Jeremy.
(cherry picked from commit 0de73eeb1a17b6af217babd626b203eca975541f)
|
|
|
|
| |
(cherry picked from commit af33c8b3521564c229091f197341ba33a7d6f162)
|
|
|
|
|
|
|
|
|
| |
If total_data == 4 Windows doesn't care what values
are placed in that field, it just ignores them.
The System i QNTC IBM SMB client puts bad values here,
so ignore them.
Jeremy.
(cherry picked from commit cfdbe8a1f2057ad1a8886ca7445a812219648d19)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This API is unusual in that if used to remove a non-list head it nulls out
the next and prev pointers. This is what you want for debugging (don't want
an entry removed from the list to be still virtually linked into it) but
means there is no consistent idiom for use as the next and prev pointers
get trashed on removal from the list, meaning you must save them yourself.
You can use it one way when deleting everything via the head pointer, as
this preserves the next pointer, but you *must* use it another way when not
deleting everything via the head pointer. Fix all known uses of this (the main
one is in conn_free_internal() and would not free all the private data entries
for vfs modules. The other changes in web/statuspage.c and winbindd_util.c
are not strictly neccessary, as the head pointer is being used, but I've done
them for consistency. Long term we must revisit this as this API is too hard
to use correctly.
Jeremy.
(cherry picked from commit 45514fc5d85221339a4ee55b9f9f78c917b2fd19)
|
|
|
|
|
| |
Jeremy.
(cherry picked from commit ffa704347a9cf10de20105e3dd07963f975cbd77)
|
|
|
|
|
|
|
|
|
|
|
|
| |
disposition call.
This was my fault. I use a singleton cache (positive and negative) to speed up pathname based
qfileinfo/setfileinfo lookups for alternate fsp's open on the same path. I only invalidated the
negative cache on adding a new file fsp, as I incorrectly imagined the new fsp was put at the *end* of
the open files list. DLIST_ADD puts it at the start, meaning any subsequent open wasn't seen once the
cache was set. Doh !
Jeremy.
(cherry picked from commit 3d10c237a9b71d269d7936d58c2f8c0172165cbe)
|
|
|
|
|
|
| |
3.2.x (code is different there).
Jeremy.
(cherry picked from commit d3e790fa70d083a53de221907c951580ce2537a4)
|
|
|
|
|
|
|
| |
using the parent security descriptor type and flags instead
of using the passed in SD.
Jeremy.
(cherry picked from commit 78941c166debc8315516d895b2ef77e52417f067)
|
|
|
|
|
|
|
| |
We need to become root for AIO read and write to allow the AIO thread
to send a completion signal to the parent process when the IO
completes
(cherry picked from commit 91dcce0e4deb87c6d5e491eb9dbb09fd04981d28)
|
|
|
|
|
| |
cannot do sendfile for this file"
(cherry picked from commit 5f30f87dcbeaf30713fadeb130193cb86021e87f)
|
|
|
|
|
|
|
| |
This fixes a potential crash bug, a client can make us read memory we
should not read. Luckily I got the disp checks right...
Volker
|
|
|
|
|
|
|
| |
farm failures when winbindd connects as guest.
This one took a *lot* of tracking down :-).
Jeremy.
|
|
|
|
|
|
|
| |
"acl group control"
parameter and make it only apply to owning group. Also added man page fix.
Jeremy.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-- Summary --
Specifically crafted SMB responses can result
in a heap overflow in the Samba client code.
Because the server process, smbd, can itself
act as a client during operations such as
printer notification and domain authentication,
this issue affects both Samba client and server
installations.
Ensure that we specify the buffer size used to store incoming SMB
packets. This bug was originally introduced in Samba 2.2.4. Patch from
Jeremy Allison.
|
|
|
|
|
|
|
|
|
| |
Can someone with gpfs available test this ? The only codepath using this
function is the modules/gpfs.c module. The fix resolves at least the build
issues Samba has with recent kernel / libcap versions by using the portable
cap_get_proc()/cap_set_proc() interface (instead of using capget/capset).
Guenther
|
|
|
|
|
|
|
| |
by name code from conn, we were already doing the
same check in the dfs_redirect() function, so move
it into parse_dfs_path() instead.
Jeremy.
|
|
|
|
| |
Jeremy.
|
|
|
|
|
| |
not the start of the list.
Jeremy.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix bug #5460. The problem is RHEL5.0 shipped a CIFS client
that sets the DFS bit on pathnames but doesn't
send DFS paths. This causes lookups to fail as
the smbd/msdfs.c code now just eats the first
two parts of the pathname and uses the rest as
the local path. The previous hostname check
used to protect us from that as we knew that
when the hostname was invalid it was a local
path (and a broken client).
I didn't want to put that check back in, but
came up with another idea - even though the
hostname can be a different one, the sharename
must be valid on this machine. So we can check
for a valid sharename instead.
Second part of patch for bug #5460. Cope with pathnames
that don't look like \xxx\yyy, cope with arbitrary length.
Jeremy.
Fix debug message.
Jeremy.
|
| |
|
| |
|
|
|
|
| |
Karolin
|
|
|
|
| |
Jeremy.
|
|
|
|
|
|
| |
There is no reason to ensure the target host is ourselves, and
this breaks MS clients in some cases.
Jeremy.
|
|
|
|
|
| |
We have to tell XP64 that we store unicode, otherwise some library will to a
findfirst before each createfile, leaking a directory handle each time.
|
|
|
|
| |
Bug 5271 -- thanks to Tiziano Müller
|
|
|
|
| |
Jeremy.
|
|
|
|
| |
Jeremy.
|
|
|
|
|
|
|
| |
of a SPNEGO packet we could drop into the NTLMSSP
part of the processing. This fix only for 3.0.28a,
I have a proper SPNEGO negotiate fix for 3.2.
Jeremy
|
|
|
|
| |
Thanks to Andreas Schneider <anschneider@suse.de> for nagging :-)
|
|
|
|
| |
Patch by Corinna Vinschen -- Thanks
|
|
|
|
| |
Jeremy.
|
|
|
|
| |
Jeremy.
|