cvs2svn Import User [Fri, 20 Jun 2003 12:58:10 +0000 (12:58 +0000)]
This commit was manufactured by cvs2svn to create tag
'APPLIANCE_HEAD_PRE_3_0_0_RC2_MERGE'.
Gerald Carter [Fri, 20 Jun 2003 12:58:09 +0000 (12:58 +0000)]
fix for CR 2230; don't throw away domain local groups
Gerald Carter [Thu, 19 Jun 2003 14:56:46 +0000 (14:56 +0000)]
* one more fix on CR 2179. Rework winbind_getgroups to nto require
2 calls.
* don't free memory that was talloc'd(). No CR. Fix crash bug seen
yesterday
Gerald Carter [Wed, 18 Jun 2003 16:37:55 +0000 (16:37 +0000)]
fix a debugging statement; CR 2179
Gerald Carter [Wed, 18 Jun 2003 06:39:36 +0000 (06:39 +0000)]
another fix fro CR 2179. I think this is the last one
1) orders print_access_check() by:
a) root can do anything (easy check)
b) check security descriptor (bit comparisons in memory)
c) "printer admins" (may result in numerous calls to
winbind)
2) cache the groups for the last user we looked up in
user_in_winbindd_group_list(). Might need a timeout here,
but since the user token is created at session setup time,
i don't really think this is a problem.
3) removes the 1/2 delay in open_printer_ex() since I don't
believe it is helpful in the general sense (see the comments
as to why it was there in the first place).
4) use the IP address fdrom the original socket when establishing
the change notify session to a client instead of resolving the
name from scratch. (backport from 3.0)
Tim Potter [Wed, 18 Jun 2003 06:10:49 +0000 (06:10 +0000)]
CR 2230 - allow domain local groups to appear in a user's group list.
Tim Potter [Tue, 17 Jun 2003 00:58:20 +0000 (00:58 +0000)]
Fix bad # of arguments to debug level 10 statement. No CR#.
Jeremy Allison [Thu, 12 Jun 2003 18:15:35 +0000 (18:15 +0000)]
Large raft of fixes to make winbindd scale a lot better in large
environments. No CR#.
Jeremy.
Jeremy Allison [Wed, 11 Jun 2003 23:53:21 +0000 (23:53 +0000)]
Miiissster Potter, our new celebrity.... ! Don't overwrite some the fstring
in the winbindd_domain struct when mapping a sid to name from other sids.
It tends to upset the rest of the code to have domains suddenly change
names (and yes it took me 4 hours to find this on a customer site so I'm
not happy :-). No CR#.
Jeremy.
Tim Potter [Wed, 11 Jun 2003 07:30:29 +0000 (07:30 +0000)]
Fix for long standing bug where permissions compatible with win2k
servers only interferes with domain logons. Related to CR2214.
Jeremy Allison [Wed, 11 Jun 2003 00:47:36 +0000 (00:47 +0000)]
Add more verbose error reporting on connection fail to show who we were
trying to connect to, for what domain, and what the error was. No CR#.
Jeremy.
Jeremy Allison [Tue, 10 Jun 2003 21:53:24 +0000 (21:53 +0000)]
Instrument the cache code in winbindd so I can tell what is going on.
No CR#.
Jeremy.
Jeremy Allison [Tue, 10 Jun 2003 06:16:51 +0000 (06:16 +0000)]
Add some basic DEBUG statements at level 10 so we can see what is being
called. This is *essential* (and should be done on all the other cli_XX
rpc calls) to help debug winbindd problems remotely. No CR#.
Jeremy.
Tim Potter [Tue, 10 Jun 2003 06:07:47 +0000 (06:07 +0000)]
Fix for cr 2214: use the group list in the cached info3 structure in
preference to the group list returned by the get user groups rpc which
doesn't seem to return the correct group membership in all cases.
Gerald Carter [Thu, 5 Jun 2003 19:16:42 +0000 (19:16 +0000)]
Another fix for CR 2179
* push neg_conn_cache into get_dc_name()
Gerald Carter [Mon, 2 Jun 2003 21:41:19 +0000 (21:41 +0000)]
apply sequence number fixes to NT4 & mixed mode AD domains as well; cache sequence number in tdb to prevent dual winbind daemon from duplicating seqnum lookups
Gerald Carter [Mon, 2 Jun 2003 17:30:35 +0000 (17:30 +0000)]
don't obsess over the highestCommittedUSN number in an AD domain so much
Tim Potter [Mon, 26 May 2003 00:02:57 +0000 (00:02 +0000)]
Fix compile problem with --developer build. No CR.
Jeremy Allison [Thu, 22 May 2003 20:40:12 +0000 (20:40 +0000)]
Fix for a CR# already logged as closed (non-reproducible). It was a crash dump with WinXP
clients doing driver download reported by Gabby. This is the correct fix (file_find_dif()
must cope with fsp->fd == -1 entries - stat opens. WinXP seems to do a lot of these).
Jeremy.
Gerald Carter [Mon, 19 May 2003 21:29:46 +0000 (21:29 +0000)]
CR 2179: don't do unnecessary node status lookups when getting sequence number via LDAP; also fix logic error in locating the preferred DC
Jeremy Allison [Fri, 16 May 2003 22:15:54 +0000 (22:15 +0000)]
Fix for checking corrupt tdb's and exiting. CR#1837.
Jeremy.
Jeremy Allison [Thu, 24 Apr 2003 18:49:27 +0000 (18:49 +0000)]
Fixes for CR#1504.
Jeremy.
Gerald Carter [Thu, 17 Apr 2003 19:06:33 +0000 (19:06 +0000)]
fix case in AVL statement; CR 1986
Gerald Carter [Wed, 16 Apr 2003 15:30:46 +0000 (15:30 +0000)]
fix CR 1986; failed dns resolution adminlog message did not exist
Jeremy Allison [Wed, 16 Apr 2003 08:44:37 +0000 (08:44 +0000)]
Fixed typo in fix.
Jeremy.
Jeremy Allison [Wed, 16 Apr 2003 08:43:04 +0000 (08:43 +0000)]
tpot fix for CR#2014. Silly missing free() caused memleak.
Jeremy.
Jeremy Allison [Fri, 11 Apr 2003 20:41:09 +0000 (20:41 +0000)]
Fixup portmon notification messages - cr#2143, #2055, #2140, #2122
Jeremy.
Jeremy Allison [Tue, 8 Apr 2003 23:59:41 +0000 (23:59 +0000)]
Ensure print queue array is zeroed out before returning. CR#2135.
Jeremy.
Jeremy Allison [Tue, 8 Apr 2003 21:43:17 +0000 (21:43 +0000)]
Fix incorrect extra SAFE_FREE on error condition. No CR#.
Jeremy.
Gerald Carter [Mon, 7 Apr 2003 15:38:40 +0000 (15:38 +0000)]
trans2 fix for CAN-2003-0201; CR 2126; reviewed by Jeremy
Tim Potter [Mon, 7 Apr 2003 04:36:03 +0000 (04:36 +0000)]
Free a cache entry if there is an access denied error
and need to return information from the netsamlogon cache in
query_user() and lookup_usergroups().
No CR# but already found by Siubing.
Jerry to review.
Jeremy Allison [Fri, 4 Apr 2003 00:59:28 +0000 (00:59 +0000)]
Fixes for CR#1837,#2055,2122 (I hope). Store the queue correctly.
Jeremy.
Gerald Carter [Thu, 3 Apr 2003 21:09:51 +0000 (21:09 +0000)]
Fixup for CR 601 (again); add admin access requirement to open_printer_ex() delay; and get the "ChangeId" printer data reply correct
Jeremy Allison [Wed, 2 Apr 2003 01:55:49 +0000 (01:55 +0000)]
Subtle changes to message handling after ENUMJOBS.
CR#2055
Jeremy.
Jeremy Allison [Tue, 1 Apr 2003 23:36:36 +0000 (23:36 +0000)]
Delete tdb and panic changes when tdb corrupt. CR#1837.
Jeremy.
Gerald Carter [Tue, 1 Apr 2003 13:58:15 +0000 (13:58 +0000)]
fix potential handle leak in _spoolss_open_printer_ex(); final fix for CR2102; reviewed by jra
Gerald Carter [Mon, 31 Mar 2003 16:48:13 +0000 (16:48 +0000)]
fix potential smbd crash when we fail to alloacte a policy handle for a printer open; CR 2102 (reviewed by jreilly)
Tim Potter [Fri, 28 Mar 2003 02:54:33 +0000 (02:54 +0000)]
Fine tuning for cr1168. Up the retry count when we can't enumerate large
user lists. Also prevent winbind from returing a cached error in this
case.
Jeremy Allison [Fri, 28 Mar 2003 01:55:09 +0000 (01:55 +0000)]
Partial fix for CR#2055. Blank job problem still remains.
Jeremy.
Jeremy Allison [Thu, 27 Mar 2003 19:03:51 +0000 (19:03 +0000)]
Fix mismatch with format string and args. No CR#.
Jeremy.
Tim Potter [Wed, 26 Mar 2003 02:58:39 +0000 (02:58 +0000)]
CR1916: don't queue up dual daemon requests if the queue already contains
an identical request. This stops the front winbindd from using too much
memory when the back end can't process the requests quickly enough.
This was found when sbm unplugged her box from the network for a while.
Needs review!
Gerald Carter [Tue, 25 Mar 2003 20:57:39 +0000 (20:57 +0000)]
CR 2068; don't dereference NULL sid pointers
Tim Potter [Fri, 21 Mar 2003 04:45:55 +0000 (04:45 +0000)]
CR#2046
When returning the list of user groups, merge in any groups from
trusted domains contained in the cached info3 structure. These guys
appear in the other_sids member.
Needs review.
Jeremy Allison [Fri, 21 Mar 2003 00:58:16 +0000 (00:58 +0000)]
Removed 2 full tdb traversals when getting enumjobs. This is complex new
code to fix CR#2064 and needs reviewing please (JohnR already looked at
it). It needs merging with 3.0 and HEAD.
Jeremy.
John Reilly [Thu, 20 Mar 2003 03:05:50 +0000 (03:05 +0000)]
Better message for sys log entry when "max smbd processes" is reached.
JohnR (CR1873)
Jeremy Allison [Thu, 20 Mar 2003 00:59:19 +0000 (00:59 +0000)]
lib/messages.c: Check return from chainlock before modifying message queue.
Apply the job returned limit across all requests for job queues.
CR#2064.
Jeremy.
John Reilly [Thu, 20 Mar 2003 00:34:30 +0000 (00:34 +0000)]
Added sys log entry for "max smbd processes" when is reached.
JohnR (CR1873)
Tim Potter [Wed, 19 Mar 2003 03:43:04 +0000 (03:43 +0000)]
CR#1168. Add a call to winbindd_cm_flush() if a call to query_user_list()
fails. This seems to make the fix for this bug more reliable. Also
added some commentary on this whole mess and some debugs.
Can someone review this please?
Tim Potter [Tue, 18 Mar 2003 01:29:58 +0000 (01:29 +0000)]
Clear U/<DOMAIN>/<RID> and UG/<DOMAIN>/<RID> entries from winbindd.cache
so cached errors are not returned on getpwnam and usergroups.
Added helper function to test for presence of cached info3 data for
a particular rid.
Reviewed by jerry. No CR number.
Tim Potter [Tue, 18 Mar 2003 01:27:13 +0000 (01:27 +0000)]
If we have an access denied cache entry for getpwnam and usergrgoups,
and a cached info3 in the samlogon cache, then do a query. This will
force the rpc back end to return the info3 data instead of the cached
error.
Reviewed by jerry. No CR number.
Tim Potter [Tue, 18 Mar 2003 01:25:09 +0000 (01:25 +0000)]
Invalidate getpwnam and usergroups winbindd cache entries when info3 data
is stored in netsamlogon_cache.tdb (auth_crap and smbd_auth_crap).
Review by jerry. No CR number.
Tim Potter [Mon, 17 Mar 2003 22:17:30 +0000 (22:17 +0000)]
Extra debug for cr1168.
Tim Potter [Fri, 14 Mar 2003 22:15:39 +0000 (22:15 +0000)]
Forgot to check this in. )-:
cr1168: I admit defeat. Do the query_user_list() in a retry loop if
it returns NT_STATUS_UNSUCCESSFUL.
Gerald Carter [Thu, 13 Mar 2003 19:04:07 +0000 (19:04 +0000)]
missed one file in CR 2005 fix
Gerald Carter [Thu, 13 Mar 2003 17:48:31 +0000 (17:48 +0000)]
Fix for CR 2005; reviewed by tpot
Adding caching of NET_USER_INFO_3 after a successful sam_logon
request. This means that the query_user() and lookup_usergroups()
will succeed in a Win2k domain with RA==1 environment even without
an --auth-user defined in secrets.tdb.
Introduced new samlogon_cache.tdb used only by winbindd at this point.
This is a APP_HEAD only change for now. I need to consider if and how
to port it to HEAD/SAMBA_3_0.
Jeremy Allison [Wed, 12 Mar 2003 22:46:31 +0000 (22:46 +0000)]
Change size parameters from signed to unsigned to fix up warnings.
Part of CR#1976
Jeremy.
Tim Potter [Tue, 11 Mar 2003 23:59:46 +0000 (23:59 +0000)]
CR 1988: fix for slow memory leak on namecache timeout
Reviewed by mbp.
Martin Pool [Tue, 11 Mar 2003 04:37:42 +0000 (04:37 +0000)]
hp CR2006
When opening an existing DB, don't require the hash_size specified to
the open call to be the same as that of the existing tdb. The
specified hash_size is only used if the tdb needs to be (re)created.
With this patch in place, tdbtool can open the printing tdbs, which
are created with a hash_size of 5000. Before it would fail with EIO.
Gerald Carter [Mon, 10 Mar 2003 20:38:15 +0000 (20:38 +0000)]
fix for CR 1099; enable namecache.tdb lookups for wins servers in nmbd
Jeremy Allison [Sat, 8 Mar 2003 01:17:49 +0000 (01:17 +0000)]
Fix typo in earlier fix, caught by Ranjit @ HP. CR#1976.
Jeremy.
Jeremy Allison [Sat, 8 Mar 2003 01:14:10 +0000 (01:14 +0000)]
Fixed typo in earlier fix. Cut-n-paste bug. CR#1976.
Jeremy.
Jeremy Allison [Fri, 7 Mar 2003 00:31:30 +0000 (00:31 +0000)]
Found at Connectathon, .NET RC1 arranges trans/trans2/nttrans parameters
differently to W2K, cope with this. CR#1976.
Jeremy.
Gerald Carter [Wed, 5 Mar 2003 22:20:34 +0000 (22:20 +0000)]
revert to logging actual NT status code instead of the pretty
description. Part of CR 1858
Jeremy Allison [Wed, 5 Mar 2003 01:10:47 +0000 (01:10 +0000)]
Connectathon fix. W2K -> W2K over port 445 doing a tconX does the full
\\server\share syntax, not just a "share" tconX syntax. This broke interop
with a vendor. No CR#.
Jeremy.
Tim Potter [Tue, 4 Mar 2003 02:27:27 +0000 (02:27 +0000)]
Call tdb_reopen_all() after fork in winbindd dual-daemon. This is
further work on cr 1168 and 1907.
Reviewed by Jeremy.
Gerald Carter [Mon, 3 Mar 2003 16:35:26 +0000 (16:35 +0000)]
remove outdated comment
Gerald Carter [Mon, 3 Mar 2003 16:25:58 +0000 (16:25 +0000)]
* CR1868: only send a change notify message if we have something
that changed that the client is monitoring.
* couple of comments abnout how we need to validate driver names
on SetPrinter() and AddPrinter()
* up the debug level on some overly verbose dev mode parsing messages
Tim Potter [Mon, 3 Mar 2003 04:35:26 +0000 (04:35 +0000)]
CR 1907: Invalidate the user and group lists on SIGHUP. If we are in
restrict anonymous mode, the access denied user listing will be store
in the winbindd cache. When we add a username/password using wbinfo
and SIGHUP, the cached access denied entry will always be returned unless
the sequence number changes. This was implemented by the cache flush
on SIGHUP. Do a tdb_traverse() and delete user/group lists instead
to make this process coherent with dual daemon mode.
Jeremy, does this satisfy your definition of coherent? I don't want to
introduce any (more) hard to find tdb corruption bugs.
Tim Potter [Mon, 3 Mar 2003 04:08:10 +0000 (04:08 +0000)]
Possible fixes for CR1168:
- initialise return parameters in cli_samr_enum_dom_users()
Tim Potter [Mon, 3 Mar 2003 04:06:26 +0000 (04:06 +0000)]
Possible fix for CR1168:
- don't return out of memory when no users returned in rpc
query_user_list() function.
Tim Potter [Mon, 3 Mar 2003 04:05:38 +0000 (04:05 +0000)]
Possible fixes for CR1168:
- fix uninitialised call-by-reference parameter in call to
query_user_list() backend function.
Jeremy Allison [Sat, 1 Mar 2003 02:22:06 +0000 (02:22 +0000)]
Part of previous commit I missed... allow all jobs if max is zero.
Jeremy.
Jeremy Allison [Sat, 1 Mar 2003 02:19:48 +0000 (02:19 +0000)]
Added limit to number of jobs enumerated. Set to 500 currently. Should
finally cure CR#1504.
Jeremy.
Jeremy Allison [Sat, 1 Mar 2003 00:47:46 +0000 (00:47 +0000)]
Ensure added jobs increment total_jobs. Part of CR#1837.
Jeremy.
Jeremy Allison [Fri, 28 Feb 2003 18:01:16 +0000 (18:01 +0000)]
*Excellent* patch from Michael Steffens <michael_steffens@hp.com> to limit
the unix domain sockets used by winbindd (also solves FD_SETSIZE problem
in winbindd to boot !). Adds a "last_access" field to winbindd connections,
and will close the oldest idle connection once the number of open connections
goes over WINBINDD_MAX_SIMULTANEOUS_CLIENTS (defined in local.h as 200
currently). No CR#.
Jeremy.
Martin Pool [Fri, 28 Feb 2003 04:01:29 +0000 (04:01 +0000)]
Remove reference to "mainpage.dox" and CodingStandards, which have
been removed.
Put subdirectory names in file list, so we get lib/util_chr.c, not
just util_chr.c.
Gerald Carter [Thu, 27 Feb 2003 23:53:38 +0000 (23:53 +0000)]
don't forget the NULL
Gerald Carter [Thu, 27 Feb 2003 23:27:48 +0000 (23:27 +0000)]
and the winner of "i should have just written it in assembly
is..."
don't use pstrcpy() when you are not dealing with pstrings.
Jeremy Allison [Thu, 27 Feb 2003 22:34:12 +0000 (22:34 +0000)]
don't pass NULL pointers to strcmp() - from HEAD. No CR#.
Jeremy.
Gerald Carter [Thu, 27 Feb 2003 20:00:40 +0000 (20:00 +0000)]
additional fix for CR 601
* distinguish WinXP from Win2k
* add a 1/3 of a second delay in OpenPrinter
in order to trigger a LAN/WAN optimization in
2k clients.
Jeremy Allison [Wed, 26 Feb 2003 22:46:53 +0000 (22:46 +0000)]
Removed unused static BOOL. No CR#.
Jeremy.
Jeremy Allison [Wed, 26 Feb 2003 21:26:56 +0000 (21:26 +0000)]
Fix for blocking lock issues found by Herb. No CR#.
Jeremy.
Jeremy Allison [Wed, 26 Feb 2003 21:25:56 +0000 (21:25 +0000)]
Extra debug statements to help track CR#1837.
Jeremy.
Jeremy Allison [Wed, 26 Feb 2003 21:13:27 +0000 (21:13 +0000)]
Ensure we panic if a tdb becomes corrupt. Part of CR#1504.
Jeremy.
Gerald Carter [Tue, 25 Feb 2003 17:56:14 +0000 (17:56 +0000)]
Progress on CR 601
cache the printer_info_2 with the open printer handle.
cache is invalidated on a mod_a_printer() call **on that smbd**.
Yes, this means that the window for admins to step on each other
from different clients just got larger, but since handles a generally
short lived this is probably ok.
Tim Potter [Tue, 25 Feb 2003 03:32:39 +0000 (03:32 +0000)]
Another hopeful fix for CR#1168. Change the RPC used in querying
domain users from QueryDispInfo to EnumDomainUsers. Hopefully this
will fix the random dropouts that keep occuring when listing large
domains.
My thought is that since QueryDispInfo is only used in the NT user
manager it may have a bug with large domains. A more commonly used
RPC may not have such problems.
Jeremy Allison [Mon, 24 Feb 2003 19:37:38 +0000 (19:37 +0000)]
Merge from HEAD. Use pstrcpy not safe_strcpy.
No CR#.
Jeremy.
Jeremy Allison [Mon, 24 Feb 2003 19:22:34 +0000 (19:22 +0000)]
Merge from head. Move off-by-one buggy malloc()/safe_strcpy() combination to strdup() instead.
No CR#.
Jeremy.
Jeremy Allison [Mon, 24 Feb 2003 03:27:06 +0000 (03:27 +0000)]
Merge off-by-one crash fixes found and fixed in HEAD by Andrew Bartlett.
No CR#.
Jeremy.
Jeremy Allison [Sat, 22 Feb 2003 01:10:26 +0000 (01:10 +0000)]
When checking is_locked() new WRITE locks conflict with existing READ locks even
if the context is the same. See LOCKTEST7 in smbtorture. No CR#.
Jeremy.
Jeremy Allison [Fri, 21 Feb 2003 20:17:01 +0000 (20:17 +0000)]
Fix testparm (I need it). No CR#.
Jeremy.
Gerald Carter [Fri, 21 Feb 2003 19:56:03 +0000 (19:56 +0000)]
not my day :-(; s/unistr2_to_ascii/unistr2_to_dos/
Gerald Carter [Fri, 21 Feb 2003 19:01:28 +0000 (19:01 +0000)]
s/unistr2_to_dos/unistr2_to_ascii/ to fix compile
Gerald Carter [Fri, 21 Feb 2003 17:10:07 +0000 (17:10 +0000)]
help in debugging registry values: dump as a string when REG_SZ or REG_MULTI_SZ; working on CR 601
Gerald Carter [Fri, 21 Feb 2003 16:46:36 +0000 (16:46 +0000)]
don't retrieve a prniter object if the keyname is empty; just fail and return; working on CR 601
Tim Potter [Fri, 21 Feb 2003 05:50:44 +0000 (05:50 +0000)]
Ignore errors on python_clean target.
Jeremy Allison [Thu, 20 Feb 2003 19:03:15 +0000 (19:03 +0000)]
Ensure tdb error code is set for corrupt and i/o errors before calling
the log function. This allows the log function to take action. CR#1837.
Jeremy.
Martin Pool [Thu, 20 Feb 2003 03:30:11 +0000 (03:30 +0000)]
CR1829: Fix memory leak when unpacking 'B' buffers in Python.
(PyList_Append creates a new reference to the added object, and so we
have to release the existing one.)
Jeremy Allison [Wed, 19 Feb 2003 21:47:44 +0000 (21:47 +0000)]
Fix inspired by Stefan (metze) Metzmacher - cache the sidtype also.
No CR#.
Jeremy.
Gerald Carter [Wed, 19 Feb 2003 18:02:13 +0000 (18:02 +0000)]
backing out PRINTER_ATTRIBUTE_RAW_ONLY; more testing needed; CR 1736