Jeremy Allison [Mon, 9 Jul 2007 00:48:07 +0000 (00:48 +0000)]
r23752: Fix bug introduced by checkin 22920, allow large
readX. Fix from Dmitry Shatrov <dhsatrov@linux.vnet.ibm.com>.
"In send_file_readX(), if startpos > sbuf.st_size, then smb_maxcnt is set
to an invalid large value due to integer overflow.
As for me, this resulted in MS Word hanging while trying to save
a 1.5Mb document."
Michael Adam [Sat, 7 Jul 2007 23:57:25 +0000 (23:57 +0000)]
r23750: Change the behaviour of net conf import when there is a global section
in the current registry and there is no global section in the input
file (or only global options with default values):
In that case the existing global section is now not touched. Before, it
would have been deleted and recreated empty. The new behaviour is how
other shares are treated too.
Note that since the input file is parsed by lp_load, there is currently
no way to distinguish between a section with only default parameters
and a non-existing section in net conf import.
Michael
PS: A couple of trailing white-spaces have been eliminated
and a line was broken to be not longer than 80 chars, too.
(This used to be commit ec21a0cf9f01986d333b50b883f2105e32cf7fc9)
Michael Adam [Sat, 7 Jul 2007 22:18:54 +0000 (22:18 +0000)]
r23747: Move formatting of a parameter's value into a value string
to a function of its own. (for storing it in registry),
Eliminate the valtype variable : store everything as "sz".
Eliminate some trailing white spaces on the way.
Michael Adam [Sat, 7 Jul 2007 20:40:59 +0000 (20:40 +0000)]
r23744: Remove TODO-comment. lp_load returns False if opening
of the config file fails. That's enough of checking for
existence and readbility to my taste.
r23743: Simplify stat_cache_lookup() logic. For the history of this, see
http://article.gmane.org/gmane.network.samba.internals/32486.
(This used to be commit e5e42fe3d5b26c0ec48d98c001b9cb1623c0b5a7)
Jeremy Allison [Fri, 6 Jul 2007 21:46:43 +0000 (21:46 +0000)]
r23735: Second part of the bugfix for #4763
This should coalesce identical adjacent notify records - making the "too large"
bug very rare indeed. Please test.
Jeremy.
(This used to be commit 1aaa1f5bbe9222acbe3dea1daa1c6c5ce72e1c2c)
(a) Update the counter for the number of new groups to resolve else
we'll only expand one group member per level and drop the rest.
(b) Don't reset the num_names counter in winbindd_ads.c:lookup_groupmem()
or we'll drop the SIDs resolved to names via cache from the resulting
list.
(This used to be commit dfb89dfcaa02f497ff22ac0213b70add6e4d5b8f)
Jeremy Allison [Thu, 5 Jul 2007 18:28:18 +0000 (18:28 +0000)]
r23728: First part of bugfix for #4763. Limit notify responses
to client max buf size.
Jeremy.
(This used to be commit 6113f56919a3cd7fd753808dbbe473603851bc3c)
r23727: Explicitly pass down FLAGS2 to srvstr_get_path.
Next step is to remove the bug that in the trans2 code we use the inbuf
as the base pointer to decide whether we need ucs2 alignment where we
need to use the beginning of the params buffer
r23726: Explicitly pass down the FLAGS2 field to srvstr_pull_buf. The next
checkin will pull this up to srvstr_get_path. At that point we can get more
independent of the inbuf, the base_ptr in pull_string will only be used
to satisfy UCS2 alignment constraints.
(This used to be commit 836782b07bf133e9b2598c4a089f1c810e4c7754)
r23724: Reduce access to the global inbuf a tiny bit. Add a struct smb_request
that contains some of the fields from the SMB header, removing the need
to access inbuf directly. This right now is used only in the open file
code & friends, and creating that header is only done when needed. This
needs more work, but it is a start.
Jeremy, I'm only checking this into 3_0, please review before I merge it
to _26.
Simo Sorce [Thu, 5 Jul 2007 13:46:47 +0000 (13:46 +0000)]
r23723: Alexander Larsson pointed me at a missing mapping in clierror.c
When renaming a file across 2 filesystem a samba server returns
NT_STATUS_NOT_SAME_DEVICE but thius is not translated to EXDEV,
and the generic EINVAL is returned instead.
This should fix it, Jeremy or Derrel please check if this is ok.
(This used to be commit b35038fa4e3e69f1397758497a46dc0d37edee79)
Lars Müller [Wed, 4 Jul 2007 20:25:29 +0000 (20:25 +0000)]
r23708: - Add define for WINBIND_WARN_PWD_EXPIRE.
- Add parameter config_flag to get_config_item_int() and do the same
check as in get_conf_item_string.
(This used to be commit d1d1baa264587911e1c97b3b35d5ed2bc56bf12b)
Lars Müller [Wed, 4 Jul 2007 19:52:51 +0000 (19:52 +0000)]
r23707: - Move the asprintf() call to create the key even in
get_conf_item_string() to the later if statement.
- Also move the key definition to the later if statement in
get_conf_item_string() and get_conf_item_int().
(This used to be commit 3a82ec943a3828b843dd47aaa0e360844d4dfb91)
Michael Adam [Wed, 4 Jul 2007 16:17:48 +0000 (16:17 +0000)]
r23706: Add a script to create domainusers,-groups and -aliases.
This is done via rpc client. The main purpose is to
be able to fill a domain controller with a large number
of users / groups easily. A the object names are
built as <prefix><num> where number ranges from a given
start number counting up until a given number of objects
has been created.
In a next step, I will submit scripts to add (many) users to
a group and to add a user to (many) groups.
Lars Müller [Wed, 4 Jul 2007 14:15:26 +0000 (14:15 +0000)]
r23705: Add suggestion for vim from Andreas 'GlaDiaC' Schneider to show tabs,
trailing whitespace, and continued lines visually.
(This used to be commit 6209ae79de3710ab9c2e91e2f6643b1c5fe2a6b2)
Simo Sorce [Tue, 3 Jul 2007 23:34:01 +0000 (23:34 +0000)]
r23691: fix for bug on touching files as described here:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243897
(This used to be commit 6b68c006f8ecba8ed3a4d87950691cb1e5c46386)
Introduce GNU ld linker export-script for hiding non-public symbols
in shared libraries.
Based on initial patch from Julien Cristau <jcristau@debian.org>
and suggestions from James Peach <jpeach@samba.org>. Currently
the libsmbsharemodes libraries still exports *. Signed off on
my Derrell as well.
(This used to be commit c42cf731b4b259c5c1a874fd1837ca85144f1a58)
Jeremy Allison [Tue, 3 Jul 2007 18:00:54 +0000 (18:00 +0000)]
r23688: Fix bug #4759 reported by Raul <ismell@ismell.org>.
"N" is not a valid format entry for ber_printf, should be "n"
Jeremy.
(This used to be commit f3bb102c24018f0a91f8b51de6fe646c091da6be)
Simo Sorce [Tue, 3 Jul 2007 13:07:56 +0000 (13:07 +0000)]
r23682: Old patch I forgot in one of my 3.0.25 trees.
Make sure we honour the directive not to allow machine password changes.
(This used to be commit 436555f05ceae34d8df2356d1066b6b5e0a07c41)
Michael Adam [Sat, 30 Jun 2007 23:52:23 +0000 (23:52 +0000)]
r23668: When creating a new string value, win2k regedit delivers
one byte of data despite characters being two-byte.
This modifies registry_pull_value, to change the data
to the correct two-byte version of the empty string,
(as delivered by winxp), when only one byte of data is
received.
Michael Adam [Sat, 30 Jun 2007 22:31:13 +0000 (22:31 +0000)]
r23667: Prevent storing of forbidden parameter names in registry
configuration as values. I would really like to check whether
the valuename is a valid parameter name (with lp_parameter_is_valid)
here, but unfortunately, regedit cereates new values as
"New Value #1" (and so on) first, before dropping into the
rename box. So this is impossible here.
Jeremy Allison [Sat, 30 Jun 2007 00:22:59 +0000 (00:22 +0000)]
r23664: Fix incorrect index - should be j not i. How did we ever
live without valgrind :-).
Jeremy.
(This used to be commit 9b231149c78c8bbfb70c5675cffb652705ba2cd2)
Jeremy Allison [Fri, 29 Jun 2007 17:57:05 +0000 (17:57 +0000)]
r23663: Fix bug #4308 - Excel save operation corrupts file ACLs.
You don't want to know what I discovered about Windows
ACLs to make this work :-(. See :
Volker Lendecke [Fri, 29 Jun 2007 17:27:59 +0000 (17:27 +0000)]
r23660: Anybody know what check_dos_char() was used for? It wasn't called at
all, so it's gone. With it 8k bss went away.
(This used to be commit 7e9a4c39a5ce620f8eac74d0ae4dd80b96c81aca)
Michael Adam [Fri, 29 Jun 2007 12:30:41 +0000 (12:30 +0000)]
r23656: Add initial checking of the validity of a paramter
given to "net conf setparm". Add a utility function
lp_parameter_valid() for this to loadparm.c.
Günther Deschner [Fri, 29 Jun 2007 08:56:35 +0000 (08:56 +0000)]
r23646: Generalize our internal keytab handling to support a broader range of default
keytabnames (like "ANY:FILE:/etc/krb5.keytab,krb4:/etc/srvtab"). This also
fixes keytab support with Heimdal (which supports the WRFILE pragma as well
now).
Michael Adam [Thu, 28 Jun 2007 10:32:52 +0000 (10:32 +0000)]
r23641: Put check for forbidden values in smbconf into a function.
(This will be used in a next step to prevent storing these
values in reg_smbconf.c.)
Gerald Carter [Wed, 27 Jun 2007 18:28:18 +0000 (18:28 +0000)]
r23636: Adding coding style guide for Samba 3.0 branches (no differences from Tridge's prog_guide.txt so we should have a similar style throughout the project)
(This used to be commit ff1c2fdc08f6198bad1bf9f5bae8dc6bc5fb534a)
Gerald Carter [Wed, 27 Jun 2007 16:52:36 +0000 (16:52 +0000)]
r23633: Fix a couple of crash bugs pointed out by Volker caused by an old
change from a pstring to a char* and still trying use pstrcpy().
(This used to be commit 21dc46a2bad6fee720f0f591e1051aa7675c77c8)
Gerald Carter [Wed, 27 Jun 2007 16:52:34 +0000 (16:52 +0000)]
r23632: Correctly return the new_group list pointer from expand_groups
or else getgrnam() always acts like 'winbind expand groups = 1'
(This used to be commit 04ae193ec44c0ecefa64ca44ad0cdb5968087319)
Jeremy Allison [Tue, 26 Jun 2007 22:49:10 +0000 (22:49 +0000)]
r23620: Convert set_nt_acl to return NTSTATUS. Also fix the chown
return to correctly return NT_STATUS_INVALID_OWNER if it
should be disallowed. Matches better what W2K3R3 does.
NFSv4 ACL module owners, please examine these changes.
Jim McDonough [Tue, 26 Jun 2007 20:09:41 +0000 (20:09 +0000)]
r23616: Fix bugzilla #4719: must change password is not set from usrmgr.exe.
This was only affecting the newer versions of usrmgr.exe, because they
use a user_info_25 struct. The password is getting set separately
inside that code, so the password last set time was getting set from the
password change logic.
We also were not parsing a number of fields (like logon hours) from the
user_info_25. That should also be fixed.
(This used to be commit afabd68b6ae874aceba708dc36808ed007ad496c)