Jeremy Allison [Fri, 19 Jan 2007 21:46:12 +0000 (21:46 +0000)]
r20916: Add in the delete on close final fix - but only enabled
with -DDEVELOPER.
Jeremy.
Jeremy Allison [Fri, 19 Jan 2007 21:29:46 +0000 (21:29 +0000)]
r20915: Fixed the bad merge from 3.0.24.
Jeremy.
Jeremy Allison [Fri, 19 Jan 2007 20:05:02 +0000 (20:05 +0000)]
r20914: Sync up incorrect differences between 3.0.24 and 3.0
Jeremy.
Jeremy Allison [Fri, 19 Jan 2007 20:00:44 +0000 (20:00 +0000)]
r20913: Fix the build.
Jeremy.
Jeremy Allison [Fri, 19 Jan 2007 19:41:34 +0000 (19:41 +0000)]
r20912: Ensure the list always remains sorted even when
moving events around.
Jeremy.
Gerald Carter [Fri, 19 Jan 2007 18:13:53 +0000 (18:13 +0000)]
r20911: Fix copyright message in winbindd to use the macro from smb.h
Gerald Carter [Fri, 19 Jan 2007 14:54:05 +0000 (14:54 +0000)]
r20905: Windows 2000 returns NT_STATUS_ACCOUNT_RESTRICTION if the pw
chnage fails due to policy settings where as 2003 (the chgpasswd3()
request) fails with NT_STATUS_PASSWORD_RESTRICTION. Thunk down
to the same return code so we correctly retreive the password policy
in both cases.
Gerald Carter [Fri, 19 Jan 2007 14:33:36 +0000 (14:33 +0000)]
r20904: This is a placeholder fix. Apparently Windows 2000
is sharing the IDL for the SAMR pipe with Windows 2003
but returning NT_STATUS_NOT_SUPPORTED rather than a DCE/RCE
fault. We need to catch this in the general sense
by looking at the returned PDU size. But this immediate
change fixes password changes via pam_winbind against Windows 2000
DCs.
Gerald Carter [Fri, 19 Jan 2007 14:29:42 +0000 (14:29 +0000)]
r20903: Replace the hardcoded "smb.conf" string with the dyn_CONFIGFILE
Gerald Carter [Thu, 18 Jan 2007 22:08:38 +0000 (22:08 +0000)]
r20884: patch from Michael Adam <ma@sernet.de> to add new sambaTrustedDomainPassword object class
Jeremy Allison [Thu, 18 Jan 2007 21:51:52 +0000 (21:51 +0000)]
r20883: W00t! I now understand how "delete on close" really
works - even with the strange "initial delete on close"
semantics. The "initial delete on close" flag isn't
committed to the share mode db until the handle is
closed, and is discarded if any real "delete on close"
was set. This allows me to remove the "initial_delete_on_close"
flag from the share db, and move it into a BOOL in files_struct.
Warning ! You must do a make clean after this. Cope with
the wrinkle in directory delete on close which is done
differently from files. We now pass all Samba4 smbtortute
BASE-DELETE tests except for the one checking that files
can't be created in a directory which has the delete on
close set (possibly expensive to fix).
Jeremy.
Jeremy Allison [Thu, 18 Jan 2007 19:18:43 +0000 (19:18 +0000)]
r20880: Fix memory leak in new sitename code. You got *really*
close Guenther, then you forgot to use "key" :-) :-).
Jeremy.
Volker Lendecke [Thu, 18 Jan 2007 15:51:51 +0000 (15:51 +0000)]
r20878: Fix build with --enable-profiling
Volker Lendecke [Thu, 18 Jan 2007 12:49:59 +0000 (12:49 +0000)]
r20877: Random notify fixes
Volker Lendecke [Thu, 18 Jan 2007 11:31:38 +0000 (11:31 +0000)]
r20876: Fix bug 4346 -- Thanks to YAMASAKI Hiroyuki
Jelmer Vernooij [Thu, 18 Jan 2007 10:18:59 +0000 (10:18 +0000)]
r20875: Pass DCE/RPC server call arguments as a struct rather than as separate arguments.
This makes it a bit more similar to the Samba4 code.
Günther Deschner [Thu, 18 Jan 2007 09:58:57 +0000 (09:58 +0000)]
r20874: We need to distinguish client sitenames per realm. We were overwriting
the stored client sitename with the sitename from each sucessfull CLDAP
connection.
Guenther
Jeremy Allison [Thu, 18 Jan 2007 06:19:24 +0000 (06:19 +0000)]
r20873: Some correctness fixes w.r.t. Samba4 torture BASE-DELETE.
Allow us to correctly refuse to set delete on close on a
non-empty directory. There are still some delete-on-close
wrinkles to be fixed, but I understand how to do that better
now. I'll fix this tomorrow.
Jeremy.
Günther Deschner [Wed, 17 Jan 2007 19:20:11 +0000 (19:20 +0000)]
r20862: When in disconnected mode there is no need to try a fallback to a site
less DNS query. This speeds up offline detection slightly.
Guenther
Günther Deschner [Wed, 17 Jan 2007 19:14:34 +0000 (19:14 +0000)]
r20861: We only use sitespecific DNS lookups when looking for DCs or KDCs, not
for a PDC.
Guenther
Günther Deschner [Wed, 17 Jan 2007 19:11:45 +0000 (19:11 +0000)]
r20860: Adding some small tweaks. When we have no sitename, there is no need to
ask for the list of DCs twice.
Guenther
Volker Lendecke [Wed, 17 Jan 2007 18:26:37 +0000 (18:26 +0000)]
r20858: change_notify_reply_packet is static
Jeremy Allison [Wed, 17 Jan 2007 18:25:35 +0000 (18:25 +0000)]
r20857: Silence gives assent :-). Checking in the fix for
site support in a network where many DC's are down.
I heard via Volker there is still a bug w.r.t the
wrong site being chosen with trusted domains but
we'll have to layer that fix on top of this.
Gd - complain if this doesn't work for you.
Jeremy.
Volker Lendecke [Wed, 17 Jan 2007 18:23:37 +0000 (18:23 +0000)]
r20856: Make "struct notify_mid_map" private to notify.c
Volker Lendecke [Wed, 17 Jan 2007 16:23:45 +0000 (16:23 +0000)]
r20854: Ok, now I think we're at a point where looking at notify starts to make sense
again :-)
Volker
Volker Lendecke [Wed, 17 Jan 2007 15:47:36 +0000 (15:47 +0000)]
r20851: To read account policies from LDAP we need root.
Volker
Günther Deschner [Wed, 17 Jan 2007 14:09:14 +0000 (14:09 +0000)]
r20848: Minor typo.
Guenther
Volker Lendecke [Wed, 17 Jan 2007 12:59:14 +0000 (12:59 +0000)]
r20846: Before this gets out of control...
This add a struct event_context and infrastructure for fd events to smbd. This
is step zero to import lib/events.
Jeremy, I rely on you to watch the change in receive_message_or_smb()
closely. For the normal code path this should be the only relevant change. The
rest is either not yet used or is cosmetic.
Volker
Jeremy Allison [Wed, 17 Jan 2007 02:44:27 +0000 (02:44 +0000)]
r20845: Somehow I missed this one - should have been part of the
previous commit :-(.
Jeremy.
Jeremy Allison [Wed, 17 Jan 2007 02:09:37 +0000 (02:09 +0000)]
r20844: Somewhat radical change - this may break the build (I will
watch carefully - so I'm doing it in one transaction so I can
roll back).
Change check_name(), reduce_name() and dptr_create() to
return NTSTATUS. This helps a lot in error path processing
and especially in reduce_name() allows us to ditch the flaky
and error-prone saving of errno and return errors directly.
Jeremy.
Jeremy Allison [Tue, 16 Jan 2007 21:04:30 +0000 (21:04 +0000)]
r20843: Get rid of last BOOL ok.
Jeremy.
Jeremy Allison [Tue, 16 Jan 2007 20:53:50 +0000 (20:53 +0000)]
r20842: Only one more BOOL ok to go...
Jeremy.
Jeremy Allison [Tue, 16 Jan 2007 20:49:51 +0000 (20:49 +0000)]
r20841: Remove more BOOL ok.
Jeremy.
Jeremy Allison [Tue, 16 Jan 2007 20:32:39 +0000 (20:32 +0000)]
r20840: Keep removing the old BOOL ok logic.
Jeremy.
Jelmer Vernooij [Tue, 16 Jan 2007 18:26:02 +0000 (18:26 +0000)]
r20839: Fix other C++ warnings
Jeremy Allison [Tue, 16 Jan 2007 18:05:37 +0000 (18:05 +0000)]
r20838: Small fix from Jiri.Sasek@Sun.COM to fix null
pointer deref.
Jeremy
Jelmer Vernooij [Tue, 16 Jan 2007 17:48:59 +0000 (17:48 +0000)]
r20837: Use real type name, to fix compilation with -WC++-compat
Volker Lendecke [Tue, 16 Jan 2007 15:50:25 +0000 (15:50 +0000)]
r20833: Reformatting
Jelmer Vernooij [Tue, 16 Jan 2007 15:42:03 +0000 (15:42 +0000)]
r20832: Remove extra pointers previously added to unique [out] pointers. Instead,
add [ref] pointers where necessary (top-level [ref] pointers,
by spec, don't appear on the wire).
This brings us closer to the DCE/RPC standard again.
Günther Deschner [Tue, 16 Jan 2007 11:15:10 +0000 (11:15 +0000)]
r20828: Fix the build with libnscd.
Guenther
Volker Lendecke [Tue, 16 Jan 2007 10:59:17 +0000 (10:59 +0000)]
r20827: Increment the interface version.
Wilco: Existing modules should continue to work, they just must be recompiled.
Volker
Volker Lendecke [Tue, 16 Jan 2007 08:17:26 +0000 (08:17 +0000)]
r20824: Send access to the trusted domain passwords through the pdb backend, so that
in the next step we can store them in LDAP to be replicated across DCs.
Thanks to Michael Adam <ma@sernet.de>
Volker
Stefan Metzmacher [Mon, 15 Jan 2007 19:28:02 +0000 (19:28 +0000)]
r20820: merge from samba4:
- include system/aio.h
- use full prototype for main
- use ifdef instead if
metze
Stefan Metzmacher [Mon, 15 Jan 2007 19:10:54 +0000 (19:10 +0000)]
r20817: sync lib/replace with samba4
metze
Stefan Metzmacher [Mon, 15 Jan 2007 18:01:25 +0000 (18:01 +0000)]
r20811: fix comment
metze
Volker Lendecke [Mon, 15 Jan 2007 09:17:11 +0000 (09:17 +0000)]
r20796: Fix the same problem Jeremy has fixed (improper handling of deferred opens)
for delete_driver_files. Proper fix pending... :-)
Jeremy, please check.
Volker
Stefan Metzmacher [Mon, 15 Jan 2007 07:17:02 +0000 (07:17 +0000)]
r20789: merge from samba4:
- remove the epoll configure checks from libreplace
metze
Jeremy Allison [Sun, 14 Jan 2007 19:43:06 +0000 (19:43 +0000)]
r20781: Fix a couple of paths found by Volker where we weren't
correctly handling deferred opens.
Jeremy.
Simo Sorce [Sun, 14 Jan 2007 17:58:24 +0000 (17:58 +0000)]
r20774: I thought I committed this before Xmas holidays ...
This change is needed to make it possible to not expire
caches in disconnected mode.
Jerry, please can you look at this and confirm it is ok?
Simo.
Volker Lendecke [Sun, 14 Jan 2007 11:25:42 +0000 (11:25 +0000)]
r20759: Dummy checkin to let the build farm pick up the new smbtorture4
Simo Sorce [Sun, 14 Jan 2007 00:08:31 +0000 (00:08 +0000)]
r20745: Commit Finnish transalation of SWAT after review
Jeremy Allison [Sat, 13 Jan 2007 22:26:46 +0000 (22:26 +0000)]
r20744: Fix the build (I missed some chkpth -> checkpath renames).
Jeremy.
Jeremy Allison [Sat, 13 Jan 2007 22:22:32 +0000 (22:22 +0000)]
r20743: Remove another BOOL ok from reply_getatr.
Jeremy.
Jeremy Allison [Sat, 13 Jan 2007 22:10:18 +0000 (22:10 +0000)]
r20742: Rename chkpth -> checkpath for sanity's sake :-).
Start removing unneeded "BOOL ok" from this reply.c
(this logic is old, old, old..... :-).
Jeremy.
Volker Lendecke [Sat, 13 Jan 2007 20:26:53 +0000 (20:26 +0000)]
r20740: Get rid of some if-statements
Volker Lendecke [Sat, 13 Jan 2007 19:55:37 +0000 (19:55 +0000)]
r20738: Remove unused variable
Volker Lendecke [Sat, 13 Jan 2007 10:40:09 +0000 (10:40 +0000)]
r20725: Get rid of a bool passed down -- gd, please check
Jeremy Allison [Sat, 13 Jan 2007 02:34:43 +0000 (02:34 +0000)]
r20724: Get closer to passing RAW-OPEN. If the client is using
create disposition of FILE_CREATE then there's no need
to check can_delete_file_in_directory().
Jeremy.
Jeremy Allison [Sat, 13 Jan 2007 02:13:45 +0000 (02:13 +0000)]
r20722: RAW-CHKPATH should now pass, build farm should
go back to normal. Sorry about that.
Jeremy.
Jeremy Allison [Sat, 13 Jan 2007 01:29:10 +0000 (01:29 +0000)]
r20721: Fix the search unix_convert error returns. Only open
to go...
Jeremy.
Jeremy Allison [Sat, 13 Jan 2007 01:07:39 +0000 (01:07 +0000)]
r20720: Fix the chkpath problem, still looking at findfirst.
Jeremy.
Jeremy Allison [Fri, 12 Jan 2007 23:47:16 +0000 (23:47 +0000)]
r20718: Sync up the filename path parsing changes from SAMBA_3_0_24.
The only difference between the two trees now w.r.t file
serving are the changes to smbd/open.c in this branch I need
to review.
Jeremy.
Jim McDonough [Fri, 12 Jan 2007 21:56:25 +0000 (21:56 +0000)]
r20717: Merge sharemode patch from Mathias Dietz <MDIETZ@de.ibm.com>.
The patch fixes the behaviour of GPFS sharemodes when
the access mask is no_access.
Volker Lendecke [Fri, 12 Jan 2007 14:16:30 +0000 (14:16 +0000)]
r20707: Clean up pdb_interface.c a bit -- patch from Michael Adam <ma@sernet.de>
Volker Lendecke [Fri, 12 Jan 2007 09:29:44 +0000 (09:29 +0000)]
r20700: In the main processing loop we select() on the fam socket. If it fires, it
might be possible that we hang in the receive_smb() although that socket is
not the reason for the select() to return.
This immediately reacts to the fam socket to become readable, and goes into
the select loop again. This fixes delays in files showing up in Windows.
Jeremy, James please review this and merge to 3_0_24 if appropriate.
Thanks,
Volker
Volker Lendecke [Fri, 12 Jan 2007 08:49:09 +0000 (08:49 +0000)]
r20699: This is an attempt to fix bug 4326.
James, can you please confirm this and merge it to 3_0_24? For me it fixes the
segfault.
Thanks,
Volker
Jeremy Allison [Fri, 12 Jan 2007 02:58:01 +0000 (02:58 +0000)]
r20695: Remove duplication of constants.
Jeremy.
Jeremy Allison [Fri, 12 Jan 2007 02:48:37 +0000 (02:48 +0000)]
r20694: To get this right we need to do signed 64-bit
comparisons here, not unsigned as we're eventually
casting into what it normall a signed 32 bit
value. Guenther please check (but I think I'm right here).
Jeremy.
Jeremy Allison [Fri, 12 Jan 2007 02:12:15 +0000 (02:12 +0000)]
r20692: Fix bug found by Guenther -
Just try to log on in offline mode without the fix: all accounts are expired,
although they are set to never expire in the PAC/info3.
NTTIME "Never" needs to get (time_t) -1.
We were casting a uint64 to time_t before
comparing, and we should have been doing it
the other way around.
Guenther please check this fixes things.
Jeremy.
Andrew Tridgell [Thu, 11 Jan 2007 23:10:16 +0000 (23:10 +0000)]
r20690: fix a bug that causes smbd to 'hang' intermittently.
The problem occurs like this:
1) running smbd as a domain member without winbindd
2) client1 connects, during auth smbd-1 calls update_trustdom_cache()
3) smbd-1 takes the trustdom cache timestamp lock, then starts
enumerate_domain_trusts
4) enumerate_domain_trusts hangs for some unknown reason
5) other clients connect, all block waiting for read lock on trustdom
cache
6) samba is now hung
The problem is the lock, and really its just trying to avoid a race
where the cure is worse than the problem. A race in updating the
trutdom cache is not a big issue. So I've just removed the lock.
It is still an open question why enumerate_domain_trusts() can
hang. Unfortunately I've not in a position to get a sniff at the site
that is affected. I suspect a full fix will involve ensuring that all
the rpc code paths have appropriate timeouts.
Günther Deschner [Thu, 11 Jan 2007 15:41:02 +0000 (15:41 +0000)]
r20687: Implement grace logons for offline authentications in pam_winbind.
In case a user authenticated sucessfully and his password just expired
while beeing disconnected, we should allow a user to logon (given a
clear warning). We currently forced the user into a password change
dialogue in that scenario; this did not make much sense while offline.
Guenther
Jelmer Vernooij [Thu, 11 Jan 2007 01:47:22 +0000 (01:47 +0000)]
r20674: Regenerate NDR parsers after pidl changes. This should fix a couple of
coverity warnings.
Lars Müller [Wed, 10 Jan 2007 21:46:39 +0000 (21:46 +0000)]
r20668: Also do not install the smbumount man page if we don't build smbumount.
Lars Müller [Wed, 10 Jan 2007 20:08:25 +0000 (20:08 +0000)]
r20666: Also do not install the smbmnt man page if SMBMOUNT_PROGS is not set.
Lars Müller [Wed, 10 Jan 2007 19:54:49 +0000 (19:54 +0000)]
r20664: Set the environment variable _before_ calling the shell.
Lars Müller [Wed, 10 Jan 2007 19:16:59 +0000 (19:16 +0000)]
r20663: Do not install smbmount man page if we didn't called configure
--with-smbmount.
Volker Lendecke [Wed, 10 Jan 2007 15:31:42 +0000 (15:31 +0000)]
r20654: Fix from Karolin Seeger <ks@sernet.de>: Accept "forever", "off" and "never" as
key words for -1 as policy values for net sam policy.
Volker
Günther Deschner [Wed, 10 Jan 2007 12:34:24 +0000 (12:34 +0000)]
r20651: Fix "password expires soon" warning message for pam_winbind.
We were incorrectly calculating the days until the password expires and
we also need to look at the info3 pass_must_change_time for expiry
calculation.
Guenther
Volker Lendecke [Wed, 10 Jan 2007 07:56:43 +0000 (07:56 +0000)]
r20644: Make some functions static, thanks to Michael Adam <ma@sernet.de> for the hint.
Volker Lendecke [Tue, 9 Jan 2007 20:04:46 +0000 (20:04 +0000)]
r20636: Remove notify leftover
Jeremy Allison [Tue, 9 Jan 2007 18:48:38 +0000 (18:48 +0000)]
r20635: Add placeholder to ensure we don't go into the
wcard unlink if bad_path was set. The error
returned here is almost certainly incorrect
and will need testing properly with smbtorture,
but I don't want to forget about this path
(yes Volker I know this is currently incorrect :-).
Jeremy.
Volker Lendecke [Tue, 9 Jan 2007 16:12:54 +0000 (16:12 +0000)]
r20634: A *LOT* more work is necessary before touching notify remotely starts to make
sense. Until then, remove it from the tree to keep the diff between 3_0_24 and
3_0 small.
Volker
Volker Lendecke [Tue, 9 Jan 2007 15:50:40 +0000 (15:50 +0000)]
r20632: The extended RAW-SAMBA3BADPATH test led me to some wrong assumptions, in
particular the NT_STATUS_INVALID_PARAMETER thing was badly wrong. Remove the
changes based on it. Using gentest is much more effective in this respect, but
it will take a while to figure out the wildcard error handling of W2k3.
Volker
Günther Deschner [Tue, 9 Jan 2007 13:24:33 +0000 (13:24 +0000)]
r20630: Fix some trivial memleaks.
Guenther
Volker Lendecke [Tue, 9 Jan 2007 09:03:33 +0000 (09:03 +0000)]
r20628: Looks bigger than it is. This is just re-indenting the if (dirname) that we've
taken care of above.
Volker
Volker Lendecke [Tue, 9 Jan 2007 08:56:24 +0000 (08:56 +0000)]
r20627: orig_name is not needed anymore, and slightly simplify logic by doing early
returns.
Volker
Volker Lendecke [Tue, 9 Jan 2007 08:19:05 +0000 (08:19 +0000)]
r20626: Fix a memleak found by the IBM checker -- not on 3.0.24
Volker Lendecke [Mon, 8 Jan 2007 21:13:27 +0000 (21:13 +0000)]
r20619: bad_path is handled somewhere else, so can_delete does not need it anymore
Volker Lendecke [Mon, 8 Jan 2007 21:08:31 +0000 (21:08 +0000)]
r20618: Fix a bug in bad_path handling that also exists in 3.0.23: For reply_unlink
under Linux we returned NT_STATUS_NOT_A_DIRECTORY. This is because in the
bad_path==True condition lstat(2) returns ENOTDIR and not ENOENT.
Not sure if we want to necessarily replicate the INVALID_PARAMETER here, but
this is what W2k3 does.
Jeremy, I tried to call you, but you were not around. So I'll leave it up to
you to merge this.
Volker
Volker Lendecke [Mon, 8 Jan 2007 20:06:36 +0000 (20:06 +0000)]
r20617: Do not notify if the delete failed
Volker Lendecke [Mon, 8 Jan 2007 16:52:58 +0000 (16:52 +0000)]
r20614: Dummy-checkin to trigger the build
Volker Lendecke [Mon, 8 Jan 2007 15:36:33 +0000 (15:36 +0000)]
r20612: A checkin I've wanted to do for ages: For bad_path==False set_bad_path_error
is equivalent to UNIX_ERROR. Expand the last reference. Lets see if I can kill
that as well :-)
Volker
Volker Lendecke [Mon, 8 Jan 2007 15:26:17 +0000 (15:26 +0000)]
r20611: All but one callers to set_bad_path_error have had the bad_path==True argument
being handled further up.
Volker
Volker Lendecke [Mon, 8 Jan 2007 14:16:42 +0000 (14:16 +0000)]
r20610: Fix a Solaris warning
Volker Lendecke [Mon, 8 Jan 2007 14:08:34 +0000 (14:08 +0000)]
r20608: ENOENT->NT_STATUS_OBJECT_NAME_NOT_FOUND is covered in the standard unix error mapping table
Volker Lendecke [Mon, 8 Jan 2007 13:21:43 +0000 (13:21 +0000)]
r20607: Next micro-step for reply_setatr
Volker Lendecke [Mon, 8 Jan 2007 13:18:23 +0000 (13:18 +0000)]
r20606: bad_path == True has been covered further up in reply_setatr.
I'm checking in micro-steps to make them independently checkable. This code
just very severely needs cleanup, but I don't want to break anything. So, be
patient with me, please :-)
Volker
Volker Lendecke [Mon, 8 Jan 2007 13:05:36 +0000 (13:05 +0000)]
r20605: Simplify logic in reply_setatr slightly
Volker Lendecke [Mon, 8 Jan 2007 08:09:29 +0000 (08:09 +0000)]
r20604: Fix two memleaks, Coverity ID 337, merge to 3_0_24
Volker Lendecke [Mon, 8 Jan 2007 08:05:49 +0000 (08:05 +0000)]
r20603: Slightly simplify logic