[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Stefan Metzmacher
The branch, master has been updated
   via  b62964d... s4:smb_server/smb2: don't reset highest_smb2_seqnum on 
SMB2 Cancel
  from  f6ecb4e... s4-torture: fixed expected error codes for s4 in 
SMB2-LOCK

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit b62964d6feb47ccf14e3d14120c04bc435c47cbd
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Nov 26 14:18:50 2009 +0100

s4:smb_server/smb2: don't reset highest_smb2_seqnum on SMB2 Cancel

metze

---

Summary of changes:
 source4/smb_server/smb2/receive.c |6 --
 1 files changed, 4 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/smb_server/smb2/receive.c 
b/source4/smb_server/smb2/receive.c
index d26be41..26995b7 100644
--- a/source4/smb_server/smb2/receive.c
+++ b/source4/smb_server/smb2/receive.c
@@ -328,8 +328,10 @@ static NTSTATUS smb2srv_reply(struct smb2srv_request *req)
smbsrv_terminate_connection(req-smb_conn, Invalid SMB2 
sequence number);
return NT_STATUS_INVALID_PARAMETER;
}
-   req-smb_conn-highest_smb2_seqnum = req-seqnum;
-   
+   if (opcode != SMB2_OP_CANCEL) {
+   req-smb_conn-highest_smb2_seqnum = req-seqnum;
+   }
+
req-session= smbsrv_session_find(req-smb_conn, uid, 
req-request_time);
req-tcon   = smbsrv_smb2_tcon_find(req-session, tid, 
req-request_time);
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Andrew Tridgell
The branch, master has been updated
   via  d524082... s4-selftest: s4 passes all the SMB2-LOCK tests now
   via  9f3ac81... s4-torture: fixed error code for s4 in SMB2-LOCK test
   via  b3115f5... s4-ntvfs: win7 does not check for the NONE smb2 lock 
flag on unlock
   via  af087f9... s4-selftest: s4 passes this test now
   via  7359a22... s4-torture: mark s4 as doing valid lock range tests on 
SMB
   via  186ea09... s4-ntvfs: move valid lock range test from smb2 layer to 
generic code
  from  b62964d... s4:smb_server/smb2: don't reset highest_smb2_seqnum on 
SMB2 Cancel

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit d5240822a58bdc69d37aa4119bcae807a4e6b0b5
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 19:11:28 2009 +1100

s4-selftest: s4 passes all the SMB2-LOCK tests now

commit 9f3ac810a64a4ad1f60038b61659c59efe699559
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 19:10:50 2009 +1100

s4-torture: fixed error code for s4 in SMB2-LOCK test

s4 returns NETWORK_NAME_DELETED if you attempt to use an invalid tree 
connection
for a lock. This test (correctly I think) happens before we validate the 
file handle.
That implies that when you pass both a closed handle and a invalid tree you
should get NT_STATUS_NETWORK_NAME_DELETED.

commit b3115f5cdc558ed71e11141e4f515511f3c6df5a
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 19:09:10 2009 +1100

s4-ntvfs: win7 does not check for the NONE smb2 lock flag on unlock

commit af087f98ab87be858c97e273f31c5dae6d49ef02
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 18:10:01 2009 +1100

s4-selftest: s4 passes this test now

commit 7359a2221937f6ff8a70db08ba8fc299e0adb738
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 18:09:50 2009 +1100

s4-torture: mark s4 as doing valid lock range tests on SMB

commit 186ea099c5d07c8f229909bd94fafc179f8dcc2a
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 18:08:51 2009 +1100

s4-ntvfs: move valid lock range test from smb2 layer to generic code

win7 also fails invalid lock ranges on SMB

---

Summary of changes:
 source4/ntvfs/common/brlock_tdb.c |   19 +++
 source4/ntvfs/ntvfs_generic.c |9 ++---
 source4/selftest/knownfail|3 ---
 source4/torture/raw/lock.c|3 ++-
 source4/torture/smb2/lock.c   |9 -
 5 files changed, 31 insertions(+), 12 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/ntvfs/common/brlock_tdb.c 
b/source4/ntvfs/common/brlock_tdb.c
index 299400b..df95d4c 100644
--- a/source4/ntvfs/common/brlock_tdb.c
+++ b/source4/ntvfs/common/brlock_tdb.c
@@ -80,6 +80,13 @@ struct brl_handle {
struct lock_struct last_lock;
 };
 
+/* see if we have wrapped locks, which are no longer allowed (windows
+ * changed this in win7 */
+static bool brl_invalid_lock_range(uint64_t start, uint64_t size)
+{
+   return (size  1  (start + size  start));
+}
+
 /*
   Open up the brlock.tdb database. Close it down using
   talloc_free(). We need the messaging_ctx to allow for
@@ -299,6 +306,10 @@ static NTSTATUS brl_tdb_lock(struct brl_context *brl,
kbuf.dptr = brlh-key.data;
kbuf.dsize = brlh-key.length;
 
+   if (brl_invalid_lock_range(start, size)) {
+   return NT_STATUS_INVALID_LOCK_RANGE;
+   }
+
if (tdb_chainlock(brl-w-tdb, kbuf) != 0) {
return NT_STATUS_INTERNAL_DB_CORRUPTION;
}
@@ -449,6 +460,10 @@ static NTSTATUS brl_tdb_unlock(struct brl_context *brl,
kbuf.dptr = brlh-key.data;
kbuf.dsize = brlh-key.length;
 
+   if (brl_invalid_lock_range(start, size)) {
+   return NT_STATUS_INVALID_LOCK_RANGE;
+   }
+
if (tdb_chainlock(brl-w-tdb, kbuf) != 0) {
return NT_STATUS_INTERNAL_DB_CORRUPTION;
}
@@ -620,6 +635,10 @@ static NTSTATUS brl_tdb_locktest(struct brl_context *brl,
kbuf.dptr = brlh-key.data;
kbuf.dsize = brlh-key.length;
 
+   if (brl_invalid_lock_range(start, size)) {
+   return NT_STATUS_INVALID_LOCK_RANGE;
+   }
+
dbuf = tdb_fetch(brl-w-tdb, kbuf);
if (dbuf.dptr == NULL) {
return NT_STATUS_OK;
diff --git a/source4/ntvfs/ntvfs_generic.c b/source4/ntvfs/ntvfs_generic.c
index d564db7..059145b 100644
--- a/source4/ntvfs/ntvfs_generic.c
+++ b/source4/ntvfs/ntvfs_generic.c
@@ -1116,13 +1116,8 @@ NTSTATUS ntvfs_map_lock(struct ntvfs_module_context 
*ntvfs,
isunlock = false;
}
for (i=0;ilck-smb2.in.lock_count;i++) {
-   if (lck-smb2.in.locks[i].length  1 
-   lck-smb2.in.locks[i].offset +
-   

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Andrew Tridgell
The branch, master has been updated
   via  e96f9a4... s4-install: old systems don't have sed -i
  from  d524082... s4-selftest: s4 passes all the SMB2-LOCK tests now

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit e96f9a40ad46b8c08eaa81fde015dccc990388c5
Author: Andrew Tridgell tri...@samba.org
Date:   Fri Nov 27 19:58:00 2009 +1100

s4-install: old systems don't have sed -i

surprisingly, this failure came from SLES8. I didn't realise that the
-i option was so new!

---

Summary of changes:
 source4/script/installmisc.sh |5 -
 1 files changed, 4 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/script/installmisc.sh b/source4/script/installmisc.sh
index 7851d1f..cb61862 100755
--- a/source4/script/installmisc.sh
+++ b/source4/script/installmisc.sh
@@ -18,7 +18,10 @@ cd $SRCDIR || exit 1
 fix_python_path() {
 f=$1
 egrep 'sys.path.insert.*bin/python' $f  /dev/null  {
-   sed -i s|\(sys.path.insert.*\)bin/python\(.*\)$|\1$PYTHONDIR\2|g $f 
|| exit 1
+   # old systems don't have sed -i :-(
+   sed s|\(sys.path.insert.*\)bin/python\(.*\)$|\1$PYTHONDIR\2|g  $f  
$f.$$ || exit 1
+   mv -f $f.$$ $f || exit 1
+   chmod +x $f
 }
 }
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  d6c60f8... s3-nsstest: drastically shrink size and dependencies of 
nsstest binary.
  from  e96f9a4... s4-install: old systems don't have sed -i

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit d6c60f8447ce92a15d48a35d3f21d881c4428663
Author: Günther Deschner g...@samba.org
Date:   Thu Jun 25 18:18:50 2009 +0200

s3-nsstest: drastically shrink size and dependencies of nsstest binary.

The size went down from 6.4M to 104K on my box.

Guenther

---

Summary of changes:
 source3/Makefile.in   |   10 +++---
 source3/torture/nsstest.c |   21 ++---
 2 files changed, 17 insertions(+), 14 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/Makefile.in b/source3/Makefile.in
index 28be9d1..6b1b64b 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -1062,9 +1062,7 @@ LOCKTEST_OBJ = torture/locktest.o $(PARAM_OBJ) 
$(LOCKING_OBJ) $(KRBCLIENT_OBJ) \
$(LIBSMB_OBJ) $(LDB_OBJ) $(LIB_NONSMBD_OBJ) \
$(LIBNDR_GEN_OBJ0) $(FNAME_UTIL_OBJ)
 
-NSSTEST_OBJ = torture/nsstest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(LDB_OBJ) 
$(KRBCLIENT_OBJ) \
- $(LIB_NONSMBD_OBJ) \
-$(LIBNDR_GEN_OBJ0)
+NSSTEST_OBJ = torture/nsstest.o $(LIBSAMBAUTIL_OBJ)
 
 PDBTEST_OBJ = torture/pdbtest.o $(PARAM_OBJ) $(LIBSMB_OBJ) $(KRBCLIENT_OBJ) \
$(LIB_NONSMBD_OBJ) $(PASSDB_OBJ) $(GROUPDB_OBJ) \
@@ -1723,11 +1721,9 @@ bin/lockt...@exeext@: $(BINARY_PREREQS) $(LOCKTEST_OBJ) 
@BUILD_POPT@ $(LIBTALLOC
$(LIBS) $(KRB5LIBS) $(LDAP_LIBS) $(POPT_LIBS) \
$(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
 
-bin/nsst...@exeext@: $(BINARY_PREREQS) $(NSSTEST_OBJ) @BUILD_POPT@ 
$(LIBTALLOC) $(LIBTDB)
+bin/nsst...@exeext@: $(BINARY_PREREQS) $(NSSTEST_OBJ)
@echo Linking $@
-   @$(CC) -o $@ $(NSSTEST_OBJ) $(LDFLAGS) $(DYNEXP) \
-   $(LIBS) $(KRB5LIBS)  $(LDAP_LIBS) $(POPT_LIBS) \
-   $(LIBTALLOC_LIBS) $(LIBTDB_LIBS) $(ZLIB_LIBS)
+   @$(CC) -o $@ $(NSSTEST_OBJ) $(LDFLAGS) $(DYNEXP) $(LIBS)
 
 bin/pdbt...@exeext@: $(BINARY_PREREQS) $(PDBTEST_OBJ) @BUILD_POPT@ 
$(LIBTALLOC) $(LIBTDB) $(LIBWBCLIENT)
@echo Linking $@
diff --git a/source3/torture/nsstest.c b/source3/torture/nsstest.c
index 9832a7b..8bb577e 100644
--- a/source3/torture/nsstest.c
+++ b/source3/torture/nsstest.c
@@ -20,6 +20,13 @@
 
 #include includes.h
 
+#ifdef malloc
+#undef malloc
+#endif
+#ifdef realloc
+#undef realloc
+#endif
+
 static const char *so_path = /lib/libnss_winbind.so;
 static const char *nss_name = winbind;
 static int nss_errno;
@@ -180,13 +187,13 @@ static struct group *nss_getgrent(void)
return NULL;
 
if (!buf) 
-   buf = SMB_MALLOC_ARRAY(char, buflen);
+   buf = (char *)malloc(buflen);
 
 again: 
status = _nss_getgrent_r(grp, buf, buflen, nss_errno);
if (status == NSS_STATUS_TRYAGAIN) {
buflen *= 2;
-   buf = SMB_REALLOC_ARRAY(buf, char, buflen);
+   buf = (char *)realloc(buf, buflen);
if (!buf) {
return NULL;
}
@@ -219,12 +226,12 @@ static struct group *nss_getgrnam(const char *name)
return NULL;
 
if (!buf) 
-   buf = SMB_MALLOC_ARRAY(char, buflen);
+   buf = (char *)malloc(buflen);
 again: 
status = _nss_getgrnam_r(name, grp, buf, buflen, nss_errno);
if (status == NSS_STATUS_TRYAGAIN) {
buflen *= 2;
-   buf = SMB_REALLOC_ARRAY(buf, char, buflen);
+   buf = (char *)realloc(buf, buflen);
if (!buf) {
return NULL;
}
@@ -257,13 +264,13 @@ static struct group *nss_getgrgid(gid_t gid)
return NULL;
 
if (!buf) 
-   buf = SMB_MALLOC_ARRAY(char, buflen);
+   buf = (char *)malloc(buflen);
 
 again: 
status = _nss_getgrgid_r(gid, grp, buf, buflen, nss_errno);
if (status == NSS_STATUS_TRYAGAIN) {
buflen *= 2;
-   buf = SMB_REALLOC_ARRAY(buf, char, buflen);
+   buf = (char *)realloc(buf, buflen);
if (!buf) {
return NULL;
}
@@ -369,7 +376,7 @@ static void nss_test_initgroups(char *name, gid_t gid)
int i;
NSS_STATUS status;
 
-   groups = SMB_MALLOC_ARRAY(gid_t, size);
+   groups = (gid_t *)malloc(size);
groups[0] = gid;
 
status = nss_initgroups(name, gid, groups, start, size);


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  a7fa3a9... s4:provision.py - cosmetic output correction
   via  6b835b0... s4:setup/provision - make the interactive mode work again
  from  7504b03... s4:WHATSNEW4.txt - Add also here a comment about the 
upgrade_from_s3 script

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit a7fa3a9703bf9f0c72031c84998f4fb21ba95429
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 13:07:52 2009 +0100

s4:provision.py - cosmetic output correction

commit 6b835b0691faab904246e587ffa6ff74b9fb53e2
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 13:02:31 2009 +0100

s4:setup/provision - make the interactive mode work again

---

Summary of changes:
 source4/scripting/python/samba/provision.py |2 +-
 source4/setup/provision |   16 +++-
 2 files changed, 4 insertions(+), 14 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/scripting/python/samba/provision.py 
b/source4/scripting/python/samba/provision.py
index 2e7843a..32286dc 100644
--- a/source4/scripting/python/samba/provision.py
+++ b/source4/scripting/python/samba/provision.py
@@ -1322,7 +1322,7 @@ def provision(setup_dir, message, session_info,
 message(DNS Domain:%s % names.dnsdomain)
 message(DOMAIN SID:%s % str(domainsid))
 if samdb_fill == FILL_FULL:
-message(Admin password:%s % adminpass)
+message(Admin password:%s % adminpass)
 if provision_backend.type is not ldb:
 if provision_backend.credentials.get_bind_dn() is not None:
 message(LDAP Backend Admin DN: %s % 
provision_backend.credentials.get_bind_dn())
diff --git a/source4/setup/provision b/source4/setup/provision
index ed350dd..f1aa07c 100755
--- a/source4/setup/provision
+++ b/source4/setup/provision
@@ -122,14 +122,6 @@ def message(text):
 if len(sys.argv) == 1:
opts.interactive = True
 
-if not opts.interactive and (opts.realm is None or opts.domain is None):
-   if opts.realm is None:
-   print sys.stderr, No realm set
-   if opts.domain is None:
-   print sys.stderr, No domain set
-   parser.print_usage()
-   sys.exit(1)
-
 if opts.interactive:
from getpass import getpass
import socket
@@ -137,19 +129,17 @@ if opts.interactive:
if default is not None:
print %s [%s]:  % (prompt,default),
else:
-   print %s:  % (prompt,),
+   print %s:  % (prompt),
return sys.stdin.readline().rstrip(\n) or default
try:
opts.realm = ask(Realm, socket.getfqdn().split(., 
1)[1].upper())
except IndexError:
-   print sys.stderr, Cannot guess realm from %s % ( 
socket.getfqdn())
-   sys.exit(1)
+   opts.realm = ask(Realm, None)
 
try:
opts.domain = ask(Domain, opts.realm.split(.)[0])
except IndexError:
-   print sys.stderr, Cannot guess domain from %s % ( 
opts.realm())
-   sys.exit(1)
+   opts.domain = ask(Domain, None)
 
opts.server_role = ask(Server Role (dc, member, standalone), dc)
for i in range(3):


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  a5d854a... s4:provision - Fix up the provision of standalone and 
member mode
  from  a7fa3a9... s4:provision.py - cosmetic output correction

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit a5d854afbc7ecc0de934040f2b6a22be55b078fe
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 14:48:58 2009 +0100

s4:provision - Fix up the provision of standalone and member mode

Both modes weren't possible anymore since 1.) the secrets entry wasn't 
created,
2.) a lookup in winbindd was done using lp_workgroup() rather than
lp_sam_name() (since on the mentioned two configurations we use the 
netbios
name as domainname - and not the workgroup).

---

Summary of changes:
 source4/scripting/python/samba/provision.py |   20 +++-
 source4/winbind/wb_setup_domains.c  |2 +-
 2 files changed, 12 insertions(+), 10 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/scripting/python/samba/provision.py 
b/source4/scripting/python/samba/provision.py
index 32286dc..5bac6e6 100644
--- a/source4/scripting/python/samba/provision.py
+++ b/source4/scripting/python/samba/provision.py
@@ -1266,16 +1266,16 @@ def provision(setup_dir, message, session_info,
 message(Setting up sam.ldb rootDSE marking as synchronized)
 setup_modify_ldif(samdb, setup_path(provision_rootdse_modify.ldif))
 
-# Only make a zone file on the first DC, it should be replicated with 
DNS replication
-if serverrole == domain controller:
-secretsdb_self_join(secrets_ldb, domain=names.domain,
-realm=names.realm,
-dnsdomain=names.dnsdomain,
-netbiosname=names.netbiosname,
-domainsid=domainsid, 
-machinepass=machinepass,
-secure_channel_type=SEC_CHAN_BDC)
 
+secretsdb_self_join(secrets_ldb, domain=names.domain,
+ realm=names.realm,
+ dnsdomain=names.dnsdomain,
+ netbiosname=names.netbiosname,
+ domainsid=domainsid, 
+ machinepass=machinepass,
+ secure_channel_type=SEC_CHAN_BDC)
+
+if serverrole == domain controller:
 secretsdb_setup_dns(secrets_ldb, setup_path, 
 realm=names.realm, dnsdomain=names.dnsdomain,
 dns_keytab_path=paths.dns_keytab,
@@ -1284,6 +1284,8 @@ def provision(setup_dir, message, session_info,
 domainguid = samdb.searchone(basedn=domaindn, 
attribute=objectGUID)
 assert isinstance(domainguid, str)
 
+# Only make a zone file on the first DC, it should be replicated
+# with DNS replication
 create_zone_file(paths.dns, setup_path, dnsdomain=names.dnsdomain,
  hostip=hostip,
  hostip6=hostip6, hostname=names.hostname,
diff --git a/source4/winbind/wb_setup_domains.c 
b/source4/winbind/wb_setup_domains.c
index 4791495..6b4fd89 100644
--- a/source4/winbind/wb_setup_domains.c
+++ b/source4/winbind/wb_setup_domains.c
@@ -30,7 +30,7 @@ NTSTATUS wbsrv_setup_domains(struct wbsrv_service *service)
primary_sid = secrets_get_domain_sid(service,
 service-task-event_ctx,
 service-task-lp_ctx,
-
lp_workgroup(service-task-lp_ctx));
+
lp_sam_name(service-task-lp_ctx));
if (!primary_sid) {
return NT_STATUS_CANT_ACCESS_DOMAIN_INFO;
}


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch v3-5-test updated

2009-11-27 Thread Karolin Seeger
The branch, v3-5-test has been updated
   via  dc13391... WHATSNEW: Start 3.5.0pre2 release notes.
   via  d7c84cd... VERSION: Raise version number up to 3.5.0pre2.
  from  54994ab... s3-smbd: no drsuapi server stubs yet in s3. Fixes the 
build, sorry.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test


- Log -
commit dc13391403cfea6a4a4de44a2d047d1be5d06817
Author: Karolin Seeger ksee...@samba.org
Date:   Fri Nov 27 15:03:15 2009 +0100

WHATSNEW: Start 3.5.0pre2 release notes.

Karolin

commit d7c84cdc41751b04d951eae31e1ca25f0a2a019f
Author: Karolin Seeger ksee...@samba.org
Date:   Fri Nov 27 15:01:52 2009 +0100

VERSION: Raise version number up to 3.5.0pre2.

Karolin

---

Summary of changes:
 WHATSNEW.txt|6 +++---
 source3/VERSION |2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 53fdc34..764f545 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -1,9 +1,9 @@
=
-   Release Notes for Samba 3.5.0pre1
-  November 26, 2009
+   Release Notes for Samba 3.5.0pre2
+  December 15, 2009
=
 
-This is the first preview release of Samba 3.5.  This is *not*
+This is the second preview release of Samba 3.5.  This is *not*
 intended for production environments and is designed for testing
 purposes only.  Please report any defects via the Samba bug reporting
 system at https://bugzilla.samba.org/.
diff --git a/source3/VERSION b/source3/VERSION
index 9438dc8..4028112 100644
--- a/source3/VERSION
+++ b/source3/VERSION
@@ -46,7 +46,7 @@ SAMBA_VERSION_REVISION=
 # e.g. SAMBA_VERSION_PRE_RELEASE=1 #
 #  -  2.2.9pre1 #
 
-SAMBA_VERSION_PRE_RELEASE=1
+SAMBA_VERSION_PRE_RELEASE=2
 
 
 # For 'rc' releases the version will be#


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch v3-5-stable updated

2009-11-27 Thread Karolin Seeger
The branch, v3-5-stable has been updated
   via  85d12a8... WHATSNEW: Start 3.5.0pre2 release notes.
   via  2f70d3e... VERSION: Raise version number up to 3.5.0pre2.
  from  31c1722... VERSION: Set version to 3.5.0pre1.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-stable


- Log -
commit 85d12a89b607a135e163a3524253301ec4efae77
Author: Karolin Seeger ksee...@samba.org
Date:   Fri Nov 27 15:03:15 2009 +0100

WHATSNEW: Start 3.5.0pre2 release notes.

Karolin
(cherry picked from commit dc13391403cfea6a4a4de44a2d047d1be5d06817)

commit 2f70d3e921bbcb5dd099378d4779169c0dc32ebd
Author: Karolin Seeger ksee...@samba.org
Date:   Fri Nov 27 15:01:52 2009 +0100

VERSION: Raise version number up to 3.5.0pre2.

Karolin
(cherry picked from commit d7c84cdc41751b04d951eae31e1ca25f0a2a019f)

---

Summary of changes:
 WHATSNEW.txt|6 +++---
 source3/VERSION |2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 53fdc34..764f545 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -1,9 +1,9 @@
=
-   Release Notes for Samba 3.5.0pre1
-  November 26, 2009
+   Release Notes for Samba 3.5.0pre2
+  December 15, 2009
=
 
-This is the first preview release of Samba 3.5.  This is *not*
+This is the second preview release of Samba 3.5.  This is *not*
 intended for production environments and is designed for testing
 purposes only.  Please report any defects via the Samba bug reporting
 system at https://bugzilla.samba.org/.
diff --git a/source3/VERSION b/source3/VERSION
index b5bd528..e06aae6 100644
--- a/source3/VERSION
+++ b/source3/VERSION
@@ -46,7 +46,7 @@ SAMBA_VERSION_REVISION=
 # e.g. SAMBA_VERSION_PRE_RELEASE=1 #
 #  -  2.2.9pre1 #
 
-SAMBA_VERSION_PRE_RELEASE=1
+SAMBA_VERSION_PRE_RELEASE=2
 
 
 # For 'rc' releases the version will be#


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  0cc45b4... s4:upgrade.py - rework to make the upgrade s3 - s4 
possible again
   via  bd6c133... s4:upgrade_from_s3 - Fix message outputs
   via  dbb8989... s4:upgrade.py - the import of WINS databases don't seem 
to work always
   via  70b3161... s4:samba3.py - ignore comments in smb.conf files
   via  82adfa3... s4:samba3.py - don't read those informations out from 
the TDB
   via  f299efa... s4:samba3.py - support the TDB version 3
  from  a5d854a... s4:provision - Fix up the provision of standalone and 
member mode

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 0cc45b47dc787abb2c3c31e4fc824798d9f3efe9
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 15:50:26 2009 +0100

s4:upgrade.py - rework to make the upgrade s3 - s4 possible again

Able to read basic settings workgroup, realm, netbios name and the
function mode from the s3 smb.conf and use them for the provision of s4.

commit bd6c133e506fdb5dee13e0a144ef99c6d452be42
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 15:49:18 2009 +0100

s4:upgrade_from_s3 - Fix message outputs

The quiet parameter was interpreted in the reverse manner.

commit dbb8989e05ac3189a5eca11fa40d572388ea02fc
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 15:02:18 2009 +0100

s4:upgrade.py - the import of WINS databases don't seem to work always

Disable it for now until the cause has been found

commit 70b31610909544c58fd87c5e0aa00e02eb5f6d4b
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 15:00:41 2009 +0100

s4:samba3.py - ignore comments in smb.conf files

commit 82adfa39b75aa628c88f828278c6ac09335d1a49
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 14:59:12 2009 +0100

s4:samba3.py - don't read those informations out from the TDB

At the moment those three calls are broken

commit f299efa8f05c6a5b739222bdf75690a4591d3650
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 14:58:37 2009 +0100

s4:samba3.py - support the TDB version 3

---

Summary of changes:
 source4/scripting/bin/upgrade_from_s3 |6 +-
 source4/scripting/python/samba/samba3.py  |   11 +-
 source4/scripting/python/samba/upgrade.py |  144 ++--
 3 files changed, 81 insertions(+), 80 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/scripting/bin/upgrade_from_s3 
b/source4/scripting/bin/upgrade_from_s3
index 03f4415..7e1e1fd 100755
--- a/source4/scripting/bin/upgrade_from_s3
+++ b/source4/scripting/bin/upgrade_from_s3
@@ -50,14 +50,14 @@ opts, args = parser.parse_args()
 
 def message(text):
 Print a message if quiet is not set.
-if opts.quiet:
+if not opts.quiet:
 print text
 
 if len(args)  1:
 parser.print_usage()
 sys.exit(1)
 
-message(Reading Samba3 databases and smb.conf\n)
+message(Reading Samba3 databases and smb.conf)
 
 libdir = args[0]
 if not os.path.isdir(libdir):
@@ -71,7 +71,7 @@ else:
 
 samba3 = Samba3(libdir, smbconf)
 
-message(Provisioning\n)
+message(Provisioning)
 
 setup_dir = opts.setupdir
 if setup_dir is None:
diff --git a/source4/scripting/python/samba/samba3.py 
b/source4/scripting/python/samba/samba3.py
index 179efa2..c21b457 100644
--- a/source4/scripting/python/samba/samba3.py
+++ b/source4/scripting/python/samba/samba3.py
@@ -509,7 +509,7 @@ class TdbSam(TdbDatabase):
 Samba 3 TDB passdb backend reader.
 def _check_version(self):
 self.version = fetch_uint32(self.tdb, INFO/version\0) or 0
-assert self.version in (0, 1, 2)
+assert self.version in (0, 1, 2, 3)
 
 def usernames(self):
 Iterate over the usernames in this Tdb database.
@@ -592,9 +592,10 @@ class TdbSam(TdbDatabase):
 for entry in hours:
 for i in range(8):
 user.hours.append(ord(entry)  (2 ** i) == (2 ** i))
-(user.bad_password_count, data) = unpack_uint16(data)
-(user.logon_count, data) = unpack_uint16(data)
-(user.unknown_6, data) = unpack_uint32(data)
+# FIXME
+#(user.bad_password_count, data) = unpack_uint16(data)
+#(user.logon_count, data) = unpack_uint16(data)
+#(user.unknown_6, data) = unpack_uint32(data)
 assert len(data) == 0
 return user
 
@@ -683,7 +684,7 @@ class ParamFile(object):
 section = None
 for i, l in enumerate(open(filename, 'r').xreadlines()):
 l = l.strip()
-if not l:
+if not l or l[0] == '#' or l[0] == ';':
 continue
 if l[0] == [ and l[-1] == ]:
 section = self._sanitize_name(l[1:-1])
diff --git 

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  79f8299... pidl: fix handling of output arguments in s3 client 
stubs.
  from  0cc45b4... s4:upgrade.py - rework to make the upgrade s3 - s4 
possible again

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 79f82998b1aa8349f76a4c82c17daf7e03cdb41a
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 16:06:40 2009 +0100

pidl: fix handling of output arguments in s3 client stubs.

a20e095 used (uint8_t) instead of (uint8_t *).

Guenther

---

Summary of changes:
 librpc/gen_ndr/cli_spoolss.c|8 
 pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm |2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/gen_ndr/cli_spoolss.c b/librpc/gen_ndr/cli_spoolss.c
index 635a817..aba70f2 100644
--- a/librpc/gen_ndr/cli_spoolss.c
+++ b/librpc/gen_ndr/cli_spoolss.c
@@ -11057,7 +11057,7 @@ static void rpccli_spoolss_EnumPrinterData_done(struct 
tevent_req *subreq)
}
 
/* Copy out parameters */
-   memcpy(discard_const_p(uint8_t, state-orig.out.value_name), 
state-tmp.out.value_name, (state-tmp.in.value_offered / 2) * 
sizeof(*state-orig.out.value_name));
+   memcpy(discard_const_p(uint8_t *, state-orig.out.value_name), 
state-tmp.out.value_name, (state-tmp.in.value_offered / 2) * 
sizeof(*state-orig.out.value_name));
*state-orig.out.value_needed = *state-tmp.out.value_needed;
*state-orig.out.type = *state-tmp.out.type;
memcpy(state-orig.out.data, state-tmp.out.data, 
(state-tmp.in.data_offered) * sizeof(*state-orig.out.data));
@@ -11132,7 +11132,7 @@ NTSTATUS rpccli_spoolss_EnumPrinterData(struct 
rpc_pipe_client *cli,
}
 
/* Return variables */
-   memcpy(discard_const_p(uint8_t, value_name), r.out.value_name, 
(r.in.value_offered / 2) * sizeof(*value_name));
+   memcpy(discard_const_p(uint8_t *, value_name), r.out.value_name, 
(r.in.value_offered / 2) * sizeof(*value_name));
*value_needed = *r.out.value_needed;
*type = *r.out.type;
memcpy(data, r.out.data, (r.in.data_offered) * sizeof(*data));
@@ -15678,7 +15678,7 @@ static void 
rpccli_spoolss_GetPrinterDriverPackagePath_done(struct tevent_req *s
 
/* Copy out parameters */
if (state-orig.out.driver_package_cab  
state-tmp.out.driver_package_cab) {
-   memcpy(discard_const_p(uint8_t, 
state-orig.out.driver_package_cab), state-tmp.out.driver_package_cab, 
(state-tmp.in.driver_package_cab_size) * 
sizeof(*state-orig.out.driver_package_cab));
+   memcpy(discard_const_p(uint8_t *, 
state-orig.out.driver_package_cab), state-tmp.out.driver_package_cab, 
(state-tmp.in.driver_package_cab_size) * 
sizeof(*state-orig.out.driver_package_cab));
}
*state-orig.out.required = *state-tmp.out.required;
 
@@ -15752,7 +15752,7 @@ NTSTATUS 
rpccli_spoolss_GetPrinterDriverPackagePath(struct rpc_pipe_client *cli,
 
/* Return variables */
if (driver_package_cab  r.out.driver_package_cab) {
-   memcpy(discard_const_p(uint8_t, driver_package_cab), 
r.out.driver_package_cab, (r.in.driver_package_cab_size) * 
sizeof(*driver_package_cab));
+   memcpy(discard_const_p(uint8_t *, driver_package_cab), 
r.out.driver_package_cab, (r.in.driver_package_cab_size) * 
sizeof(*driver_package_cab));
}
*required = *r.out.required;
 
diff --git a/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm 
b/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm
index b26a08e..68579d2 100644
--- a/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm
+++ b/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm
@@ -105,7 +105,7 @@ sub ParseOutputArgument($$$;$$)
} else {
my $size_is = ParseExpr($l-{SIZE_IS}, $env, 
$e-{ORIGINAL});
if (has_property($e, charset)) {
-   $self-pidl(memcpy(discard_const_p(uint8_t, 
$o$e-{NAME}), ${r}out.$e-{NAME}, ($size_is) * sizeof(*$o$e-{NAME})););
+   $self-pidl(memcpy(discard_const_p(uint8_t *, 
$o$e-{NAME}), ${r}out.$e-{NAME}, ($size_is) * sizeof(*$o$e-{NAME})););
} else {
$self-pidl(memcpy($o$e-{NAME}, 
${r}out.$e-{NAME}, ($size_is) * sizeof(*$o$e-{NAME})););
}


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  23d77be... misc: mark winreg_Data little-endian except for a 
REG_DWORD_BIG_ENDIAN.
  from  79f8299... pidl: fix handling of output arguments in s3 client 
stubs.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 23d77be6cb8847cbdad859269faf59fea30b27b8
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 11:18:30 2009 +0100

misc: mark winreg_Data little-endian except for a REG_DWORD_BIG_ENDIAN.

Guenther

---

Summary of changes:
 librpc/gen_ndr/misc.h |2 +-
 librpc/gen_ndr/ndr_misc.c |  357 +++--
 librpc/idl/misc.idl   |4 +-
 3 files changed, 218 insertions(+), 145 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/gen_ndr/misc.h b/librpc/gen_ndr/misc.h
index 29ea192..6672c61 100644
--- a/librpc/gen_ndr/misc.h
+++ b/librpc/gen_ndr/misc.h
@@ -89,6 +89,6 @@ union winreg_Data {
uint32_t value;/* [case(REG_DWORD)] */
const char ** string_array;/* 
[flag(LIBNDR_FLAG_STR_NULLTERM),case(REG_MULTI_SZ)] */
DATA_BLOB data;/* [flag(LIBNDR_FLAG_REMAINING),default] */
-}/* [nodiscriminant,public] */;
+}/* [public,nodiscriminant,flag(LIBNDR_FLAG_LITTLE_ENDIAN)] */;
 
 #endif /* _HEADER_misc */
diff --git a/librpc/gen_ndr/ndr_misc.c b/librpc/gen_ndr/ndr_misc.c
index ff79baa..1f4d0c9 100644
--- a/librpc/gen_ndr/ndr_misc.c
+++ b/librpc/gen_ndr/ndr_misc.c
@@ -213,77 +213,106 @@ _PUBLIC_ void ndr_print_winreg_Type(struct ndr_print 
*ndr, const char *name, enu
 
 _PUBLIC_ enum ndr_err_code ndr_push_winreg_Data(struct ndr_push *ndr, int 
ndr_flags, const union winreg_Data *r)
 {
-   if (ndr_flags  NDR_SCALARS) {
-   int level = ndr_push_get_switch_value(ndr, r);
-   NDR_CHECK(ndr_push_union_align(ndr, 4));
-   switch (level) {
-   case REG_NONE: {
-   break; }
-
-   case REG_SZ: {
-   {
-   uint32_t _flags_save_string = 
ndr-flags;
-   ndr_set_flags(ndr-flags, 
LIBNDR_FLAG_STR_NULLTERM);
-   NDR_CHECK(ndr_push_string(ndr, 
NDR_SCALARS, r-string));
-   ndr-flags = _flags_save_string;
-   }
-   break; }
-
-   case REG_BINARY: {
-   {
-   uint32_t _flags_save_DATA_BLOB = 
ndr-flags;
-   ndr_set_flags(ndr-flags, 
LIBNDR_FLAG_REMAINING);
-   NDR_CHECK(ndr_push_DATA_BLOB(ndr, 
NDR_SCALARS, r-binary));
-   ndr-flags = _flags_save_DATA_BLOB;
-   }
-   break; }
-
-   case REG_DWORD: {
-   NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 
r-value));
-   break; }
-
-   case REG_MULTI_SZ: {
-   {
-   uint32_t _flags_save_string_array = 
ndr-flags;
-   ndr_set_flags(ndr-flags, 
LIBNDR_FLAG_STR_NULLTERM);
-   NDR_CHECK(ndr_push_string_array(ndr, 
NDR_SCALARS, r-string_array));
-   ndr-flags = _flags_save_string_array;
-   }
-   break; }
-
-   default: {
-   {
-   uint32_t _flags_save_DATA_BLOB = 
ndr-flags;
-   ndr_set_flags(ndr-flags, 
LIBNDR_FLAG_REMAINING);
-   NDR_CHECK(ndr_push_DATA_BLOB(ndr, 
NDR_SCALARS, r-data));
-   ndr-flags = _flags_save_DATA_BLOB;
-   }
-   break; }
-
+   {
+   uint32_t _flags_save_UNION = ndr-flags;
+   ndr_set_flags(ndr-flags, LIBNDR_FLAG_LITTLE_ENDIAN);
+   if (ndr_flags  NDR_SCALARS) {
+   int level = ndr_push_get_switch_value(ndr, r);
+   NDR_CHECK(ndr_push_union_align(ndr, 4));
+   switch (level) {
+   case REG_NONE: {
+   break; }
+
+   case REG_SZ: {
+   {
+   uint32_t _flags_save_string = 
ndr-flags;
+   ndr_set_flags(ndr-flags, 
LIBNDR_FLAG_STR_NULLTERM);
+   

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  04f8c22... s3-kerberos: only use krb5 headers where required.
  from  23d77be... misc: mark winreg_Data little-endian except for a 
REG_DWORD_BIG_ENDIAN.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 04f8c229de7ffad5f4ec1a0bb68c2c8b4ccf4e15
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 15:52:57 2009 +0100

s3-kerberos: only use krb5 headers where required.

This seems to be the only way to deal with mixed heimdal/MIT setups during
merged build.

Guenther

---

Summary of changes:
 client/cifs.upcall.c   |1 +
 source3/configure.in   |5 +-
 source3/include/ads.h  |   71 --
 source3/include/includes.h |  170 +---
 source3/include/krb5_protos.h  |  148 +++
 source3/include/smb_krb5.h |   72 ++
 source3/libads/ads_status.c|1 +
 source3/libads/authdata.c  |1 +
 source3/libads/kerberos.c  |1 +
 source3/libads/kerberos_keytab.c   |1 +
 source3/libads/kerberos_verify.c   |1 +
 source3/libads/krb5_errs.c |1 +
 source3/libads/krb5_setpw.c|1 +
 source3/libnet/libnet.h|1 +
 source3/libsmb/cliconnect.c|1 +
 source3/libsmb/clikrb5.c   |4 +-
 source3/libsmb/clispnego.c |1 +
 source3/rpc_client/cli_pipe.c  |1 +
 source3/utils/ntlm_auth.c  |1 +
 source3/winbindd/winbindd_cred_cache.c |2 +
 source3/winbindd/winbindd_pam.c|1 +
 21 files changed, 257 insertions(+), 229 deletions(-)
 create mode 100644 source3/include/krb5_protos.h
 create mode 100644 source3/include/smb_krb5.h


Changeset truncated at 500 lines:

diff --git a/client/cifs.upcall.c b/client/cifs.upcall.c
index 063e423..bfc70d1 100644
--- a/client/cifs.upcall.c
+++ b/client/cifs.upcall.c
@@ -27,6 +27,7 @@ create dns_resolver * * /usr/local/sbin/cifs.upcall %k
 
 #include includes.h
 #include ../libcli/auth/spnego.h
+#include smb_krb5.h
 #include keyutils.h
 #include getopt.h
 
diff --git a/source3/configure.in b/source3/configure.in
index 693fe6a..95e91c2 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -3375,10 +3375,7 @@ if test x$with_ads_support != xno; then
   samba_cv_HAVE_KRB5_DEPRECATED_WITH_IDENTIFIER=no)])
 
   if test x$samba_cv_HAVE_KRB5_DEPRECATED_WITH_IDENTIFIER = xyes; then
-AC_DEFINE(KRB5_DEPRECATED, 1,
-  [Whether to use deprecated krb5 interfaces])
-  else
-AC_DEFINE(KRB5_DEPRECATED,,
+AC_DEFINE(HAVE_KRB5_DEPRECATED_WITH_IDENTIFIER, 1,
   [Whether to use deprecated krb5 interfaces])
   fi
 fi
diff --git a/source3/include/ads.h b/source3/include/ads.h
index 30f0b1f..d0bae80 100644
--- a/source3/include/ads.h
+++ b/source3/include/ads.h
@@ -8,6 +8,24 @@
 
 #include ../libds/common/flags.h
 
+/*
+ * This should be under the HAVE_KRB5 flag but since they're used
+ * in lp_kerberos_method(), they ned to be always available
+ */
+#define KERBEROS_VERIFY_SECRETS 0
+#define KERBEROS_VERIFY_SYSTEM_KEYTAB 1
+#define KERBEROS_VERIFY_DEDICATED_KEYTAB 2
+#define KERBEROS_VERIFY_SECRETS_AND_KEYTAB 3
+
+/*
+ * If you add any entries to the above, please modify the below expressions
+ * so they remain accurate.
+ */
+#define USE_KERBEROS_KEYTAB (KERBEROS_VERIFY_SECRETS != lp_kerberos_method())
+#define USE_SYSTEM_KEYTAB \
+((KERBEROS_VERIFY_SECRETS_AND_KEYTAB == lp_kerberos_method()) || \
+ (KERBEROS_VERIFY_SYSTEM_KEYTAB == lp_kerberos_method()))
+
 #define TOK_ID_KRB_AP_REQ  ((const uint8_t *)\x01\x00)
 #define TOK_ID_KRB_AP_REP  ((const uint8_t *)\x02\x00)
 #define TOK_ID_KRB_ERROR   ((const uint8_t *)\x03\x00)
@@ -226,62 +244,9 @@ typedef void **ADS_MODLIST;
 /* Kerberos environment variable names */
 #define KRB5_ENV_CCNAME KRB5CCNAME
 
-/* Heimdal uses a slightly different name */
-#if defined(HAVE_ENCTYPE_ARCFOUR_HMAC_MD5)
-#define ENCTYPE_ARCFOUR_HMAC ENCTYPE_ARCFOUR_HMAC_MD5
-#endif
-
-/* The older versions of heimdal that don't have this
-   define don't seem to use it anyway.  I'm told they
-   always use a subkey */
-#ifndef HAVE_AP_OPTS_USE_SUBKEY
-#define AP_OPTS_USE_SUBKEY 0
-#endif
-
 #define WELL_KNOWN_GUID_COMPUTERS  AA312825768811D1ADED00C04FD8D5CD 
 #define WELL_KNOWN_GUID_USERS  A9D1CA15768811D1ADED00C04FD8D5CD
 
-#ifndef KRB5_ADDR_NETBIOS
-#define KRB5_ADDR_NETBIOS 0x14
-#endif
-
-#ifndef KRB5KRB_ERR_RESPONSE_TOO_BIG
-#define KRB5KRB_ERR_RESPONSE_TOO_BIG (-1765328332L)
-#endif
-
-#ifdef HAVE_KRB5
-typedef struct {
-#if defined(HAVE_MAGIC_IN_KRB5_ADDRESS)  
defined(HAVE_ADDRTYPE_IN_KRB5_ADDRESS) /* MIT */
-   krb5_address **addrs;
-#elif 

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  6c3e241... s4:samba3.py (and test) - deactivate the tests until 
those parameters are fixed
   via  08b3c39... s4:upgrade.py - Umlaut problem
   via  1af31ae... s4:tests.sh - Make also here the change from upgrade 
to upgrade_from_s3
  from  04f8c22... s3-kerberos: only use krb5 headers where required.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 6c3e2417a0639cd7c367de93615c422cf5217456
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 16:39:27 2009 +0100

s4:samba3.py (and test) - deactivate the tests until those parameters are 
fixed

commit 08b3c396d7d534c9bfa29a7cd015a97d504d45a9
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 16:35:28 2009 +0100

s4:upgrade.py - Umlaut problem

commit 1af31aed0bd430d0af3a52962fa21f5c08309f01
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 16:34:44 2009 +0100

s4:tests.sh - Make also here the change from upgrade to upgrade_from_s3

---

Summary of changes:
 source4/scripting/python/samba/samba3.py   |2 +-
 source4/scripting/python/samba/tests/samba3.py |6 +++---
 source4/scripting/python/samba/upgrade.py  |2 +-
 source4/selftest/tests.sh  |2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/scripting/python/samba/samba3.py 
b/source4/scripting/python/samba/samba3.py
index c21b457..d1aef9e 100644
--- a/source4/scripting/python/samba/samba3.py
+++ b/source4/scripting/python/samba/samba3.py
@@ -592,7 +592,7 @@ class TdbSam(TdbDatabase):
 for entry in hours:
 for i in range(8):
 user.hours.append(ord(entry)  (2 ** i) == (2 ** i))
-# FIXME
+# FIXME (reactivate also the tests in tests/samba3.py after fixing 
this)
 #(user.bad_password_count, data) = unpack_uint16(data)
 #(user.logon_count, data) = unpack_uint16(data)
 #(user.unknown_6, data) = unpack_uint32(data)
diff --git a/source4/scripting/python/samba/tests/samba3.py 
b/source4/scripting/python/samba/tests/samba3.py
index 71e08bd..8128c51 100644
--- a/source4/scripting/python/samba/tests/samba3.py
+++ b/source4/scripting/python/samba/tests/samba3.py
@@ -122,15 +122,15 @@ class TdbSamTestCase(unittest.TestCase):
 user.logoff_time = 2147483647
 user.acct_desc = 
 user.group_rid = 1001
-user.logon_count = 0
-user.bad_password_count = 0
+# FIXME user.logon_count = 0
+# FIXME user.bad_password_count = 0
 user.domain = BEDWYR
 user.munged_dial = 
 user.workstations = 
 user.user_rid = 1000
 user.kickoff_time = 2147483647
 user.logoff_time = 2147483647
-user.unknown_6 = 1260L
+# FIXME user.unknown_6 = 1260L
 user.logon_divs = 0
 user.hours = [True for i in range(168)]
 other = self.samdb[root]
diff --git a/source4/scripting/python/samba/upgrade.py 
b/source4/scripting/python/samba/upgrade.py
index 44b43a1..3c45245 100644
--- a/source4/scripting/python/samba/upgrade.py
+++ b/source4/scripting/python/samba/upgrade.py
@@ -2,7 +2,7 @@
 #
 #  backend code for upgrading from Samba3
 #  Copyright Jelmer Vernooij 2005-2007
-#  Copyright Matthias Dieter Wallnöfer 2009
+#  Copyright Matthias Dieter Wallnoefer 2009
 #  Released under the GNU GPL v3 or later
 #
 
diff --git a/source4/selftest/tests.sh b/source4/selftest/tests.sh
index 724c9f2..7c9b19f 100755
--- a/source4/selftest/tests.sh
+++ b/source4/selftest/tests.sh
@@ -465,7 +465,7 @@ plantest ldap.secdesc.python dc 
PYTHONPATH=$PYTHONPATH:../lib/subunit/python
 plantest ldap.acl.python dc PYTHONPATH=$PYTHONPATH:../lib/subunit/python 
$PYTHON $samba4srcdir/lib/ldb/tests/python/acl.py $CONFIGURATION \$SERVER 
-U\$USERNAME%\$PASSWORD -W \$DOMAIN
 plantest blackbox.samba3dump none $PYTHON 
$samba4srcdir/scripting/bin/samba3dump $samba4srcdir/../testdata/samba3
 rm -rf $PREFIX/upgrade
-plantest blackbox.upgrade none $PYTHON $samba4srcdir/setup/upgrade 
$CONFIGURATION --targetdir=$PREFIX/upgrade $samba4srcdir/../testdata/samba3 
../testdata/samba3/smb.conf
+plantest blackbox.upgrade none $PYTHON 
$samba4srcdir/scripting/bin/upgrade_from_s3 $CONFIGURATION 
--targetdir=$PREFIX/upgrade $samba4srcdir/../testdata/samba3 
../testdata/samba3/smb.conf
 rm -rf $PREFIX/provision
 mkdir $PREFIX/provision
 plantest blackbox.provision.py none PYTHON=$PYTHON 
$samba4srcdir/setup/tests/blackbox_provision.sh $PREFIX/provision


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  663a1f5... s4:winbind - Fix it another time up
   via  3318899... s4:provision.py - cosmetic
  from  6c3e241... s4:samba3.py (and test) - deactivate the tests until 
those parameters are fixed

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 663a1f599aa163ebb5c81c02988c07cb1f0e3e6c
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 17:45:20 2009 +0100

s4:winbind - Fix it another time up

The first fix attempt did break some configurations (incl. make test).
This now is the right fix with the right comment.

commit 33188999b5a346ed2a7114f678bfb3c2d5e7ca34
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 17:39:02 2009 +0100

s4:provision.py - cosmetic

---

Summary of changes:
 source4/scripting/python/samba/provision.py |   15 +++
 source4/winbind/wb_setup_domains.c  |   16 ++--
 2 files changed, 21 insertions(+), 10 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/scripting/python/samba/provision.py 
b/source4/scripting/python/samba/provision.py
index 5bac6e6..0da03f3 100644
--- a/source4/scripting/python/samba/provision.py
+++ b/source4/scripting/python/samba/provision.py
@@ -1135,7 +1135,7 @@ def provision(setup_dir, message, session_info,
 os.mkdir(os.path.join(paths.private_dir,tls))
 
 ldapi_url = ldapi://%s % urllib.quote(paths.s4_ldapi_path, safe=)
-
+ 
 schema = Schema(setup_path, domainsid, schemadn=names.schemadn, 
serverdn=names.serverdn)
 
 if backend_type == ldb:
@@ -1266,14 +1266,13 @@ def provision(setup_dir, message, session_info,
 message(Setting up sam.ldb rootDSE marking as synchronized)
 setup_modify_ldif(samdb, setup_path(provision_rootdse_modify.ldif))
 
-
 secretsdb_self_join(secrets_ldb, domain=names.domain,
- realm=names.realm,
- dnsdomain=names.dnsdomain,
- netbiosname=names.netbiosname,
- domainsid=domainsid, 
- machinepass=machinepass,
- secure_channel_type=SEC_CHAN_BDC)
+realm=names.realm,
+dnsdomain=names.dnsdomain,
+netbiosname=names.netbiosname,
+domainsid=domainsid, 
+machinepass=machinepass,
+secure_channel_type=SEC_CHAN_BDC)
 
 if serverrole == domain controller:
 secretsdb_setup_dns(secrets_ldb, setup_path, 
diff --git a/source4/winbind/wb_setup_domains.c 
b/source4/winbind/wb_setup_domains.c
index 6b4fd89..5ce6500 100644
--- a/source4/winbind/wb_setup_domains.c
+++ b/source4/winbind/wb_setup_domains.c
@@ -27,11 +27,23 @@ NTSTATUS wbsrv_setup_domains(struct wbsrv_service *service)
 {
const struct dom_sid *primary_sid;
 
+   /*
+* This is a bit more difficult here: when we are a domain controller
+* or a joined domain member the first call will work. But if we are
+* a standalone server or unjoined member then the second is the right
+* one.
+*/
primary_sid = secrets_get_domain_sid(service,
 service-task-event_ctx,
 service-task-lp_ctx,
-
lp_sam_name(service-task-lp_ctx));
-   if (!primary_sid) {
+
lp_workgroup(service-task-lp_ctx));
+   if (primary_sid == NULL) {
+   primary_sid = secrets_get_domain_sid(service,
+service-task-event_ctx,
+service-task-lp_ctx,
+
lp_netbios_name(service-task-lp_ctx));
+   }
+   if (primary_sid == NULL) {
return NT_STATUS_CANT_ACCESS_DOMAIN_INFO;
}
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  ae20737... s3-kerberos: do not include authdata headers before 
including krb5 headers.
   via  e512ccb... s3-spoolss: simplify _spoolss_EnumPrinterKey a little 
more.
  from  663a1f5... s4:winbind - Fix it another time up

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit ae207370667a12db53362ee5dcdab8e6d4bb388f
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 18:30:18 2009 +0100

s3-kerberos: do not include authdata headers before including krb5 headers.

Guenther

commit e512ccb5b677fa7f285829ec645fc067837c0e11
Author: Günther Deschner g...@samba.org
Date:   Thu Nov 26 19:01:54 2009 +0100

s3-spoolss: simplify _spoolss_EnumPrinterKey a little more.

Guenther

---

Summary of changes:
 source3/include/authdata.h  |2 --
 source3/include/includes.h  |1 -
 source3/libads/authdata.c   |1 +
 source3/rpc_server/srv_spoolss_nt.c |   20 ++--
 4 files changed, 7 insertions(+), 17 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/authdata.h b/source3/include/authdata.h
index 70f6d2d..e1a5155 100644
--- a/source3/include/authdata.h
+++ b/source3/include/authdata.h
@@ -21,8 +21,6 @@
 #ifndef _AUTHDATA_H
 #define _AUTHDATA_H
 
-#include rpc_misc.h
-
 #define PAC_TYPE_LOGON_INFO 1
 #define PAC_TYPE_SERVER_CHECKSUM 6
 #define PAC_TYPE_PRIVSVR_CHECKSUM 7
diff --git a/source3/include/includes.h b/source3/include/includes.h
index 37cb611..cf09795 100644
--- a/source3/include/includes.h
+++ b/source3/include/includes.h
@@ -652,7 +652,6 @@ struct smb_iconv_convenience *lp_iconv_convenience(void 
*lp_ctx);
 #include passdb.h
 #include rpc_secdes.h
 #include ../libgpo/gpo.h
-#include authdata.h
 #include msdfs.h
 #include rap.h
 #include ../lib/crypto/md5.h
diff --git a/source3/libads/authdata.c b/source3/libads/authdata.c
index 35d5ef9..ed158ee 100644
--- a/source3/libads/authdata.c
+++ b/source3/libads/authdata.c
@@ -25,6 +25,7 @@
 #include includes.h
 #include librpc/gen_ndr/ndr_krb5pac.h
 #include smb_krb5.h
+#include authdata.h
 
 #ifdef HAVE_KRB5
 
diff --git a/source3/rpc_server/srv_spoolss_nt.c 
b/source3/rpc_server/srv_spoolss_nt.c
index c704418..8d7973d 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -9125,10 +9125,6 @@ WERROR _spoolss_EnumPrinterKey(pipes_struct *p,
goto done;
}
 
-   /* two byte termination (a multisz) */
-
-   *r-out.needed = 2;
-
array = talloc_zero_array(r-out.key_buffer, const char *, num_keys + 
1);
if (!array) {
result = WERR_NOMEM;
@@ -9145,23 +9141,19 @@ WERROR _spoolss_EnumPrinterKey(pipes_struct *p,
result = WERR_NOMEM;
goto done;
}
-
-   *r-out.needed += strlen_m_term(keynames[i]) * 2;
-   }
-
-   if (r-in.offered  *r-out.needed) {
-   result = WERR_MORE_DATA;
-   goto done;
}
 
-   result = WERR_OK;
-
if (!push_reg_multi_sz(p-mem_ctx, blob, array)) {
result = WERR_NOMEM;
goto done;
}
 
-   if (r-in.offered = blob.length) {
+   *r-out.needed = blob.length;
+
+   if (r-in.offered  *r-out.needed) {
+   result = WERR_MORE_DATA;
+   } else {
+   result = WERR_OK;
memcpy(r-out.key_buffer, blob.data, blob.length);
}
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  da79cbb... s3-kerberos: add a missing reference to authdata headers.
  from  ae20737... s3-kerberos: do not include authdata headers before 
including krb5 headers.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit da79cbb0800dd647be864e8bbb5fe1132708174b
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 18:51:56 2009 +0100

s3-kerberos: add a missing reference to authdata headers.

Guenther

---

Summary of changes:
 source3/libsmb/clikrb5.c |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/libsmb/clikrb5.c b/source3/libsmb/clikrb5.c
index 0839b43..04c9bbf 100644
--- a/source3/libsmb/clikrb5.c
+++ b/source3/libsmb/clikrb5.c
@@ -22,6 +22,7 @@
 
 #include includes.h
 #include smb_krb5.h
+#include authdata.h
 
 #ifdef HAVE_KRB5
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  2175c0e... s4:samba3.py - deactivate also the assertion on line 599
  from  da79cbb... s3-kerberos: add a missing reference to authdata headers.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 2175c0ed0649d545ea833d50e8d33fbee9051c35
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 20:02:25 2009 +0100

s4:samba3.py - deactivate also the assertion on line 599

---

Summary of changes:
 source4/scripting/python/samba/samba3.py |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/scripting/python/samba/samba3.py 
b/source4/scripting/python/samba/samba3.py
index d1aef9e..809fd01 100644
--- a/source4/scripting/python/samba/samba3.py
+++ b/source4/scripting/python/samba/samba3.py
@@ -596,7 +596,7 @@ class TdbSam(TdbDatabase):
 #(user.bad_password_count, data) = unpack_uint16(data)
 #(user.logon_count, data) = unpack_uint16(data)
 #(user.unknown_6, data) = unpack_uint32(data)
-assert len(data) == 0
+#assert len(data) == 0
 return user
 
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  51328a7... s3-kerberos: fix the build on Mac OS X 10.6.2.
  from  2175c0e... s4:samba3.py - deactivate also the assertion on line 599

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 51328a7056918bc75a7c1c442f47cf0271075542
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 20:08:44 2009 +0100

s3-kerberos: fix the build on Mac OS X 10.6.2.

Guenther

---

Summary of changes:
 source3/configure.in |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/configure.in b/source3/configure.in
index 95e91c2..80952b5 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -3370,7 +3370,7 @@ if test x$with_ads_support != xno; then
 AC_TRY_COMPILE(
   [#define KRB5_DEPRECATED 1
   #include krb5.h],
-  [void main(void) {}],
+  [],
   samba_cv_HAVE_KRB5_DEPRECATED_WITH_IDENTIFIER=yes,
   samba_cv_HAVE_KRB5_DEPRECATED_WITH_IDENTIFIER=no)])
 


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  7d40071... s4:registry/util - Don't include the trailing '\0' in 
the internal data format but add it on the back-conversion to a string
   via  e79dd2e... s4:net utility - add a notice for the help operation 
and format it's output of the command list better
  from  51328a7... s3-kerberos: fix the build on Mac OS X 10.6.2.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 7d400715e9af2056690c03a1a2f45c7f343fa313
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 21:14:44 2009 +0100

s4:registry/util - Don't include the trailing '\0' in the internal data 
format but add it on the back-conversion to a string

As far as I know the registry library saves all data (including) strings 
without
the null termination. So do it also here in a similar way.

commit e79dd2ef7d8b2aba7a84df5f5e82d2869a0598fc
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 20:26:17 2009 +0100

s4:net utility - add a notice for the help operation and format it's 
output of the command list better

---

Summary of changes:
 source4/lib/registry/util.c |   41 +++--
 source4/utils/net/net.c |7 ++-
 2 files changed, 33 insertions(+), 15 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/lib/registry/util.c b/source4/lib/registry/util.c
index 88b9d18..7646601 100644
--- a/source4/lib/registry/util.c
+++ b/source4/lib/registry/util.c
@@ -56,6 +56,7 @@ _PUBLIC_ char *reg_val_data_string(TALLOC_CTX *mem_ctx,
   const DATA_BLOB data)
 {
char *ret = NULL;
+   size_t ret_cnt;
 
if (data.length == 0)
return talloc_strdup(mem_ctx, );
@@ -63,18 +64,27 @@ _PUBLIC_ char *reg_val_data_string(TALLOC_CTX *mem_ctx,
switch (type) {
case REG_EXPAND_SZ:
case REG_SZ:
-   convert_string_talloc_convenience(mem_ctx, 
iconv_convenience, CH_UTF16, CH_UNIX,
- data.data, data.length,
- (void **)ret, NULL, false);
-   return ret;
+   convert_string_talloc_convenience(mem_ctx,
+ iconv_convenience,
+ CH_UTF16, CH_UNIX,
+ data.data,
+ data.length,
+ (void **)ret,
+ ret_cnt, false);
+   ret = talloc_realloc(mem_ctx, ret, char, ret_cnt + 1);
+   ret[ret_cnt] = '\0';
+   break;
case REG_BINARY:
ret = data_blob_hex_string_upper(mem_ctx, data);
-   return ret;
+   break;
case REG_DWORD:
-   if (*(int *)data.data == 0)
-   return talloc_strdup(mem_ctx, 0);
-   return talloc_asprintf(mem_ctx, 0x%x,
-  *(int *)data.data);
+   if (*(int *)data.data == 0) {
+   ret = talloc_strdup(mem_ctx, 0);
+   } else {
+   ret = talloc_asprintf(mem_ctx, 0x%x,
+ *(int *)data.data);
+   }
+   break;
case REG_MULTI_SZ:
/* FIXME */
break;
@@ -119,13 +129,16 @@ _PUBLIC_ bool reg_string_to_val(TALLOC_CTX *mem_ctx,
 
/* Convert data appropriately */
 
-   switch (*type)
-   {
+   switch (*type) {
case REG_SZ:
case REG_EXPAND_SZ:
-   convert_string_talloc_convenience(mem_ctx, iconv_convenience, 
CH_UNIX, CH_UTF16,
-data_str, 
strlen(data_str)+1,
-(void **)data-data, 
data-length, false);
+   convert_string_talloc_convenience(mem_ctx,
+ iconv_convenience,
+ CH_UNIX, CH_UTF16,
+ data_str,
+ strlen(data_str),
+ (void **)data-data,
+ data-length, false);
 
 

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  f749e22... s4:provision.py - remove hardcoded SIDs and RIDs
   via  207067d... s4:security/sddl - rework of the security descriptor 
abbreviations
   via  2e7ccdc... security.idl - Add some more wellknown SIDs/RIDs
  from  7d40071... s4:registry/util - Don't include the trailing '\0' in 
the internal data format but add it on the back-conversion to a string

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit f749e22cca79448dbbb338dff30054a87cd5a184
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 22:39:52 2009 +0100

s4:provision.py - remove hardcoded SIDs and RIDs

After rework of the SDDL modules this is possible. In future: Never hardcode
them anymore! Always use the abbreviations.

commit 207067d1a862f03d051d4ac3ae1e25b4dbf3bb51
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 22:37:52 2009 +0100

s4:security/sddl - rework of the security descriptor abbreviations

- Reoder them
- Add some new ones (needed for the security descriptor in the provision 
script)

commit 2e7ccdcb661c7c1379a4488ae42359df0563cb7f
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Fri Nov 27 22:36:59 2009 +0100

security.idl - Add some more wellknown SIDs/RIDs

---

Summary of changes:
 librpc/gen_ndr/security.h   |3 +
 librpc/idl/security.idl |   31 +++--
 source4/libcli/security/sddl.c  |   61 ++
 source4/scripting/python/samba/provision.py |6 +-
 4 files changed, 56 insertions(+), 45 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/gen_ndr/security.h b/librpc/gen_ndr/security.h
index 03e5098..0dc50c3 100644
--- a/librpc/gen_ndr/security.h
+++ b/librpc/gen_ndr/security.h
@@ -132,7 +132,9 @@
 #define SID_BUILTIN_PREW2K ( S-1-5-32-554 )
 #define SID_BUILTIN_REMOTE_DESKTOP_USERS   ( S-1-5-32-555 )
 #define SID_BUILTIN_NETWORK_CONF_OPERATORS ( S-1-5-32-556 )
+#define SID_BUILTIN_INCOMING_FOREST_TRUST  ( S-1-5-32-557 )
 #define DOMAIN_RID_LOGON   ( 9 )
+#define DOMAIN_RID_ENTERPRISE_READONLY_DCS ( 498 )
 #define DOMAIN_RID_ADMINISTRATOR   ( 500 )
 #define DOMAIN_RID_GUEST   ( 501 )
 #define DOMAIN_RID_KRBTGT  ( 502 )
@@ -145,6 +147,7 @@
 #define DOMAIN_RID_SCHEMA_ADMINS   ( 518 )
 #define DOMAIN_RID_ENTERPRISE_ADMINS   ( 519 )
 #define DOMAIN_RID_POLICY_ADMINS   ( 520 )
+#define DOMAIN_RID_READONLY_DCS( 521 )
 #define DOMAIN_RID_RAS_SERVERS ( 553 )
 #define NT4_ACL_REVISION   ( SECURITY_ACL_REVISION_NT4 )
 #define SD_REVISION( SECURITY_DESCRIPTOR_REVISION_1 )
diff --git a/librpc/idl/security.idl b/librpc/idl/security.idl
index 3c67fa7..b191414 100644
--- a/librpc/idl/security.idl
+++ b/librpc/idl/security.idl
@@ -262,22 +262,25 @@ interface security
const string SID_BUILTIN_PREW2K= S-1-5-32-554;
const string SID_BUILTIN_REMOTE_DESKTOP_USERS   = S-1-5-32-555;
const string SID_BUILTIN_NETWORK_CONF_OPERATORS = S-1-5-32-556;
+   const string SID_BUILTIN_INCOMING_FOREST_TRUST  = S-1-5-32-557;
 
/* well-known domain RIDs */
-   const int DOMAIN_RID_LOGON = 9;
-   const int DOMAIN_RID_ADMINISTRATOR = 500;
-   const int DOMAIN_RID_GUEST = 501;
-   const int DOMAIN_RID_KRBTGT= 502;
-   const int DOMAIN_RID_ADMINS= 512;
-   const int DOMAIN_RID_USERS = 513;
-   const int DOMAIN_RID_GUESTS= 514;
-   const int DOMAIN_RID_DOMAIN_MEMBERS= 515;
-   const int DOMAIN_RID_DCS   = 516;
-   const int DOMAIN_RID_CERT_ADMINS   = 517;
-   const int DOMAIN_RID_SCHEMA_ADMINS = 518;
-   const int DOMAIN_RID_ENTERPRISE_ADMINS = 519;
-   const int DOMAIN_RID_POLICY_ADMINS = 520;
-   const int DOMAIN_RID_RAS_SERVERS   = 553;
+   const int DOMAIN_RID_LOGON   = 9;
+   const int DOMAIN_RID_ENTERPRISE_READONLY_DCS = 498;
+   const int DOMAIN_RID_ADMINISTRATOR   = 500;
+   const int DOMAIN_RID_GUEST   = 501;
+   const int DOMAIN_RID_KRBTGT  = 502;
+   const int DOMAIN_RID_ADMINS  = 512;
+   const int DOMAIN_RID_USERS   = 513;
+   const int DOMAIN_RID_GUESTS  = 514;
+   const int DOMAIN_RID_DOMAIN_MEMBERS  = 515;
+   const int DOMAIN_RID_DCS = 516;
+   const int DOMAIN_RID_CERT_ADMINS = 517;
+   const int DOMAIN_RID_SCHEMA_ADMINS   = 518;
+   const int DOMAIN_RID_ENTERPRISE_ADMINS   = 519;
+   const int 

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Günther Deschner
The branch, master has been updated
   via  8f6df5d... s4-smbtorture: more and stricter tests for printer and 
data keys in RPC-SPOOLSS.
  from  f749e22... s4:provision.py - remove hardcoded SIDs and RIDs

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 8f6df5d3ec31a8c3dedfdfc506c44e03026d8485
Author: Günther Deschner g...@samba.org
Date:   Fri Nov 27 23:14:27 2009 +0100

s4-smbtorture: more and stricter tests for printer and data keys in 
RPC-SPOOLSS.

Guenther

---

Summary of changes:
 source4/torture/rpc/spoolss.c |   12 
 1 files changed, 8 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/torture/rpc/spoolss.c b/source4/torture/rpc/spoolss.c
index 2a74131..396ed75 100644
--- a/source4/torture/rpc/spoolss.c
+++ b/source4/torture/rpc/spoolss.c
@@ -2139,11 +2139,11 @@ static bool test_EnumPrinterData(struct torture_context 
*tctx, struct dcerpc_pip
 
torture_assert_ntstatus_ok(tctx, status, EnumPrinterData 
failed);
 
-   test_GetPrinterData(tctx, p, handle, r.out.value_name);
+   torture_assert(tctx, test_GetPrinterData(tctx, p, handle, 
r.out.value_name),
+   talloc_asprintf(tctx, failed to call GetPrinterData 
for %s\n, r.out.value_name));
 
-   test_GetPrinterDataEx(tctx,
-   p, handle, PrinterDriverData,
-   r.out.value_name);
+   torture_assert(tctx, test_GetPrinterDataEx(tctx, p, handle, 
PrinterDriverData, r.out.value_name),
+   talloc_asprintf(tctx, failed to call GetPrinterDataEx 
on PrinterDriverData for %s\n, r.out.value_name));
 
r.in.enum_index++;
 
@@ -2439,6 +2439,10 @@ static bool test_OpenPrinterEx(struct torture_context 
*tctx,
ret = false;
}
 
+   if (!test_printer_keys(tctx, p, handle)) {
+   ret = false;
+   }
+
if (!test_PausePrinter(tctx, p, handle)) {
ret = false;
}


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  f7c28db... s4:WINREG RPC server - add another talloc_unlink in 
DeleteKey
   via  6f7cfb0... s4:WINREG RPC server - Reintroduce the free operation on 
CloseKey
  from  8f6df5d... s4-smbtorture: more and stricter tests for printer and 
data keys in RPC-SPOOLSS.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit f7c28db475261fa859e8f1888a629ced6c447c60
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Wed Nov 18 08:48:30 2009 +0100

s4:WINREG RPC server - add another talloc_unlink in DeleteKey

Also here we waste memory - therefore free the pointless handle after the 
delete.

commit 6f7cfb0e10a1967a59ff18221bd9941edcbc8790
Author: Matthias Dieter Wallnöfer mwallnoe...@yahoo.de
Date:   Wed Nov 18 10:24:09 2009 +0100

s4:WINREG RPC server - Reintroduce the free operation on CloseKey

Better use talloc_unlink here Since we could have more than one reference.

---

Summary of changes:
 source4/rpc_server/winreg/rpc_winreg.c |8 +++-
 1 files changed, 7 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/rpc_server/winreg/rpc_winreg.c 
b/source4/rpc_server/winreg/rpc_winreg.c
index 86617a6..13c311c 100644
--- a/source4/rpc_server/winreg/rpc_winreg.c
+++ b/source4/rpc_server/winreg/rpc_winreg.c
@@ -98,6 +98,8 @@ static WERROR dcesrv_winreg_CloseKey(struct dcesrv_call_state 
*dce_call,
 
DCESRV_PULL_HANDLE_FAULT(h, r-in.handle, HTYPE_REGKEY);
 
+   talloc_unlink(dce_call-context, h);
+
ZERO_STRUCTP(r-out.handle);
 
return WERR_OK;
@@ -164,6 +166,7 @@ static WERROR dcesrv_winreg_DeleteKey(struct 
dcesrv_call_state *dce_call,
 {
struct dcesrv_handle *h;
struct registry_key *key;
+   WERROR result;
 
DCESRV_PULL_HANDLE_FAULT(h, r-in.handle, HTYPE_REGKEY);
key = h-data;
@@ -172,7 +175,10 @@ static WERROR dcesrv_winreg_DeleteKey(struct 
dcesrv_call_state *dce_call,
{
case SECURITY_SYSTEM:
case SECURITY_ADMINISTRATOR:
-   return reg_key_del(key, r-in.key.name);
+   result = reg_key_del(key, r-in.key.name);
+   talloc_unlink(dce_call-context, h);
+
+   return result;
default:
return WERR_ACCESS_DENIED;
}


-- 
Samba Shared Repository


svn commit: samba-web r1344 - in trunk/support: .

2009-11-27 Thread jra
Author: jra
Date: 2009-11-27 15:53:07 -0700 (Fri, 27 Nov 2009)
New Revision: 1344

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=revroot=samba-webrev=1344

Log:
Updated DeepRoot Linux

Modified:
   trunk/support/india.html


Changeset:
Modified: trunk/support/india.html
===
--- trunk/support/india.html2009-11-26 14:05:04 UTC (rev 1343)
+++ trunk/support/india.html2009-11-27 22:53:07 UTC (rev 1344)
@@ -8,20 +8,27 @@
 !-- Added: 11 December 2004 --
 h3Bangalore/h3
 presmall
-DeepRoot Linux is one of the largest gnu/Linux product companies in 
-India. Headquartered at Bangalore, we develop cutting edge products and
-solutions to get gnu/Linux to work for you - faster, better, today,
-every way.
+DeepRoot Linux is one of the largest GNU/Linux product companies in India.
+Headquartered at Bangalore, we develop cutting edge solutions in terms of
+Products and Value Added Services to get GNU/Linux to work for you -
+faster, better, today, every way and back them up with exemplary support.
 
-Our products include small office servers, messaging servers, file 
-servers, firewall and vpn appliances and bandwidth management and link
-management solutions. We also provide commercial support for Free
-Software and the Debian gnu/Linux distribution. Support is available
-over phone, email, remote login and on-site.
+We have sufficient expertise and experience working on Samba.
+We have countless installations of Samba Servers across verticals and
+geographies.
 
+
+DeepRoot Linux' solutions (among others) include the deepOfix Mail Server,
+CRM applications, Hosting, Firewall, Proxy Servers, VPN Solutions, Drupal
+Solutions, Directory Services, File Servers, Bandwidth and Link Management,
+Electronic Fax Solutions, Training on GNU/Linux, etc.
+We provide commercial support for Free Software and the Debian GNU/Linux
+distribution. Support is available over phone, email, remote login and
+on-site.
+
 URL: a href=http://www.deeproot.co.in;http://www.deeproot.co.in/a
-Phone: +91 (80) 5112 4781
-Email: a href=mailto:sa...@deeproot.co.in;sa...@deeproot.co.in/a
+Phone: +91 (80) 4089 
+Email: a href=mailto:st...@deeproot.co.in;st...@deeproot.co.in/a
 /small/pre
 
 



[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Andrew Tridgell
The branch, master has been updated
   via  db41a0a... s4: fix SD update and password change in upgrade script
  from  f7c28db... s4:WINREG RPC server - add another talloc_unlink in 
DeleteKey

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit db41a0afc6412934e166b8a3ed428ce549ba7c66
Author: Matthieu Patou mat+informatique.sa...@matws.net
Date:   Fri Nov 27 17:37:14 2009 +0300

s4: fix SD update and password change in upgrade script

- reserve a new Samba OID for recalculate SD control
- fix the update SD function
- fix handling of kvno in the update_machine_account_password function
- fix handling of handles in RPC winreg server

Signed-off-by: Andrew Tridgell tri...@samba.org

---

Summary of changes:
 source4/dsdb/samdb/ldb_modules/descriptor.c |   15 ++-
 source4/lib/ldb/common/ldb_controls.c   |   27 
 source4/lib/ldb/include/ldb.h   |6 +
 source4/libcli/ldap/ldap_controls.c |   20 +++
 source4/scripting/bin/upgradeprovision  |  172 ++-
 source4/scripting/python/samba/provision.py |8 +-
 source4/scripting/python/samba/schema.py|4 +-
 source4/setup/schema_samba4.ldif|2 +-
 8 files changed, 161 insertions(+), 93 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/dsdb/samdb/ldb_modules/descriptor.c 
b/source4/dsdb/samdb/ldb_modules/descriptor.c
index f9992e3..da80ee5 100644
--- a/source4/dsdb/samdb/ldb_modules/descriptor.c
+++ b/source4/dsdb/samdb/ldb_modules/descriptor.c
@@ -594,13 +594,13 @@ static int descriptor_do_mod(struct descriptor_context 
*ac)
const struct dsdb_class *objectclass;
struct ldb_message *msg;
struct ldb_control *sd_control;
+   struct ldb_control *sd_control2;
struct ldb_control **saved_controls;
int flags = 0;
uint32_t sd_flags = 0;
 
ldb = ldb_module_get_ctx(ac-module);
schema = dsdb_get_schema(ldb);
-
msg = ldb_msg_copy_shallow(ac, ac-req-op.mod.message);
objectclass_element = ldb_msg_find_element(ac-search_oc_res-message, 
objectClass);
objectclass = get_last_structural_class(schema, objectclass_element);
@@ -611,6 +611,7 @@ static int descriptor_do_mod(struct descriptor_context *ac)
return LDB_ERR_OPERATIONS_ERROR;
}
sd_control = ldb_request_get_control(ac-req, LDB_CONTROL_SD_FLAGS_OID);
+   sd_control2 = ldb_request_get_control(ac-req, 
LDB_CONTROL_RECALCULATE_SD_OID);
if (sd_control) {
struct ldb_sd_flags_control *sdctr = (struct 
ldb_sd_flags_control *)sd_control-data;
sd_flags = sdctr-secinfo_flags;
@@ -637,7 +638,11 @@ static int descriptor_do_mod(struct descriptor_context *ac)
return ret;
}
tmp_element = ldb_msg_find_element(msg, ntSecurityDescriptor);
-   tmp_element-flags = flags;
+   if (sd_control2) {
+   tmp_element-flags = LDB_FLAG_MOD_REPLACE;
+   } else {
+   tmp_element-flags = flags;
+   }
}
ret = ldb_build_mod_req(mod_req, ldb, ac,
msg,
@@ -679,7 +684,6 @@ static int descriptor_do_add(struct descriptor_context *ac)
if (mem_ctx == NULL) {
return LDB_ERR_OPERATIONS_ERROR;
}
-
switch (ac-req-operation) {
case LDB_ADD:
msg = ldb_msg_copy_shallow(ac, ac-req-op.add.message);
@@ -768,6 +772,7 @@ static int descriptor_do_add(struct descriptor_context *ac)
 static int descriptor_change(struct ldb_module *module, struct ldb_request 
*req)
 {
struct ldb_context *ldb;
+   struct ldb_control *sd_control;
struct ldb_request *search_req;
struct descriptor_context *ac;
struct ldb_dn *parent_dn, *dn;
@@ -784,7 +789,9 @@ static int descriptor_change(struct ldb_module *module, 
struct ldb_request *req)
case LDB_MODIFY:
dn = req-op.mod.message-dn;
sd_element = ldb_msg_find_element(req-op.mod.message, 
nTSecurityDescriptor);
-   if (!sd_element) {
+   /* This control allow forcing the recalculation of the SD */
+   sd_control = ldb_request_get_control(req, 
LDB_CONTROL_RECALCULATE_SD_OID);
+   if (!sd_element  !sd_control) {
return ldb_next_request(module, req);
}
break;
diff --git a/source4/lib/ldb/common/ldb_controls.c 
b/source4/lib/ldb/common/ldb_controls.c
index 82bd34b..f2ab61b 100644
--- a/source4/lib/ldb/common/ldb_controls.c
+++ b/source4/lib/ldb/common/ldb_controls.c
@@ -513,6 +513,33 @@ struct ldb_control **ldb_parse_control_strings(struct 
ldb_context *ldb, void *me

[SCM] Samba Shared Repository - branch master updated

2009-11-27 Thread Andrew Tridgell
The branch, master has been updated
   via  1287c1d... s4-drs: cope with bogus empty attributes from w2k8-r2
  from  db41a0a... s4: fix SD update and password change in upgrade script

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 1287c1d115fb7e8f3954bc05ff65007968403a9c
Author: Andrew Tridgell tri...@samba.org
Date:   Sat Nov 28 13:27:06 2009 +1100

s4-drs: cope with bogus empty attributes from w2k8-r2

w2k8-r2 sometimes sends empty attributes with completely bogus attrid
values in a DRS replication response. This allows us to continue with
the vampire operation despite these broken elements.

---

Summary of changes:
 source4/dsdb/repl/replicated_objects.c |   17 +
 1 files changed, 17 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/dsdb/repl/replicated_objects.c 
b/source4/dsdb/repl/replicated_objects.c
index 020d5f1..a8a93e4 100644
--- a/source4/dsdb/repl/replicated_objects.c
+++ b/source4/dsdb/repl/replicated_objects.c
@@ -129,6 +129,15 @@ static WERROR dsdb_convert_object_ex(struct ldb_context 
*ldb,
}
 
status = dsdb_attribute_drsuapi_to_ldb(ldb, schema, a, 
msg-elements, e);
+   if (!NT_STATUS_IS_OK(status)  a-value_ctr.num_values == 0) {
+   /* w2k8-r2 occasionally sends bogus empty
+  attributes with rubbish attribute IDs. The
+  only think we can do is discard these */
+   DEBUG(0,(__location__ : Discarding bogus empty 
DsReplicaAttribute with attid 0x%x\n,
+a-attid));
+   ZERO_STRUCTP(e);
+   continue;
+   }
W_ERROR_NOT_OK_RETURN(status);
 
m-attid= a-attid;
@@ -149,6 +158,14 @@ static WERROR dsdb_convert_object_ex(struct ldb_context 
*ldb,
}
}
 
+   /* delete any empty elements */
+   for (i=0; i  msg-num_elements; i++) {
+   if (msg-elements[i].name == NULL) {
+   ldb_msg_remove_element(msg, msg-elements[i]);
+   i--;
+   }
+   }
+
if (rdn_m) {
struct ldb_message_element *el;
el = ldb_msg_find_element(msg, rdn_attr-lDAPDisplayName);


-- 
Samba Shared Repository


svn commit: samba-web r1345 - in trunk/support: .

2009-11-27 Thread jra
Author: jra
Date: 2009-11-27 23:06:26 -0700 (Fri, 27 Nov 2009)
New Revision: 1345

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=revroot=samba-webrev=1345

Log:
Added Abax Asesores

Modified:
   trunk/support/costarica.html


Changeset:
Modified: trunk/support/costarica.html
===
--- trunk/support/costarica.html2009-11-27 22:53:07 UTC (rev 1344)
+++ trunk/support/costarica.html2009-11-28 06:06:26 UTC (rev 1345)
@@ -29,4 +29,15 @@
 a href=http://www.coral-systems.com;http://www.coral-systems.com/a
 /small/pre
 
+!-- Added: 27 November 2009 --
+presmall
+Abax Asesores
+URL: a href=http://www.abaxasesores.com;http://www.abaxasesores.com/a
+Email: a href=i...@abaxasesores.comi...@abaxasesores.com/a
+Tel. +506 2234.2290
+Fax. +506 2234.6622
+
+Apartado Postal: 595-2070, Sabanilla, San José, Costa Rica.
+/small/pre
+
 !--#include virtual=footer_support.html --



Build status as of Sat Nov 28 07:00:01 2009

2009-11-27 Thread build
URL: http://build.samba.org/

--- /home/build/master/cache/broken_results.txt.old 2009-11-27 
00:00:20.0 -0700
+++ /home/build/master/cache/broken_results.txt 2009-11-28 00:00:04.0 
-0700
@@ -1,4 +1,4 @@
-Build status as of Fri Nov 27 07:00:05 2009
+Build status as of Sat Nov 28 07:00:01 2009
 
 Build counts:
 Tree Total  Broken Panic 
@@ -14,9 +14,9 @@
 samba-docs   0  0  0 
 samba-web0  0  0 
 samba_3_current 30 28 0 
-samba_3_master 31 24 3 
+samba_3_master 31 23 3 
 samba_3_next 31 30 12
-samba_4_0_test 33 32 0 
+samba_4_0_test 33 30 0 
 talloc   2  2  0 
 tdb  2  2  0