The branch, master has been updated
via 6fbff71 SMB_INFO_ALLOCATION: return with UINT32_MAX rather than
cutting at 4 bytes
via d02d4b5 winbindd: Give winbindd_ads.c its own header
via aa3896f libsmb: proto.h does not need ads.h
from 4d1d6e2 smbd/smb2_ioctl: check for NULL dst_fsp before use
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 6fbff7184e116c9afcbcd62a479b692154767b60
Author: Peter Somogyi <[email protected]>
Date: Mon May 15 10:21:01 2017 +0200
SMB_INFO_ALLOCATION: return with UINT32_MAX rather than cutting at 4 bytes
An AIX cifs client queries SMB_INFO_ALLOCATION that has only 4 bytes to
report
dfree and dsize. Return the max instead of random unexpeced numbers.
Signed-off-by: Peter Somogyi <[email protected]>
Reviewed-by: Volker Lendecke <[email protected]>
Reviewed-by: Jeremy Allison <[email protected]>
Autobuild-User(master): Jeremy Allison <[email protected]>
Autobuild-Date(master): Wed May 17 05:49:46 CEST 2017 on sn-devel-144
commit d02d4b5bc1a2f370b590f728df323cf08bd6d9f6
Author: Volker Lendecke <[email protected]>
Date: Thu May 11 21:38:50 2017 +0200
winbindd: Give winbindd_ads.c its own header
Not necessary to compile all of winbind when playing with ads.h
Signed-off-by: Volker Lendecke <[email protected]>
Reviewed-by: Jeremy Allison <[email protected]>
commit aa3896f571ee4bfb8a9da1ad0c1d5f8e3703a2c9
Author: Volker Lendecke <[email protected]>
Date: Thu May 11 21:30:30 2017 +0200
libsmb: proto.h does not need ads.h
Signed-off-by: Volker Lendecke <[email protected]>
Reviewed-by: Jeremy Allison <[email protected]>
-----------------------------------------------------------------------
Summary of changes:
source3/libsmb/proto.h | 1 -
source3/smbd/trans2.c | 6 ++++++
source3/winbindd/idmap_ad_nss.c | 2 +-
source3/winbindd/idmap_rfc2307.c | 2 +-
source3/winbindd/winbindd_ads.c | 1 +
.../unix_match.h => source3/winbindd/winbindd_ads.h | 18 +++++++++++++-----
source3/winbindd/winbindd_proto.h | 5 -----
7 files changed, 22 insertions(+), 13 deletions(-)
copy lib/util/unix_match.h => source3/winbindd/winbindd_ads.h (70%)
Changeset truncated at 500 lines:
diff --git a/source3/libsmb/proto.h b/source3/libsmb/proto.h
index c5e28ef..137c355 100644
--- a/source3/libsmb/proto.h
+++ b/source3/libsmb/proto.h
@@ -26,7 +26,6 @@
#ifndef _LIBSMB_PROTO_H_
#define _LIBSMB_PROTO_H_
-#include "ads.h"
#include "auth_info.h"
struct smb_trans_enc_state;
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index e8346ba..01df2ee 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -3510,6 +3510,12 @@ NTSTATUS smbd_do_qfsinfo(struct smbXsrv_connection
*xconn,
cBytesSector=%u, cUnitTotal=%u, cUnitAvail=%d\n", (unsigned int)st.st_ex_dev,
(unsigned int)bsize, (unsigned int)sectors_per_unit,
(unsigned int)bytes_per_sector, (unsigned
int)dsize, (unsigned int)dfree));
+ /*
+ * For large drives, return max values and not modulo.
+ */
+ dsize = MIN(dsize, UINT32_MAX);
+ dfree = MIN(dfree, UINT32_MAX);
+
SIVAL(pdata,l1_idFileSystem,st.st_ex_dev);
SIVAL(pdata,l1_cSectorUnit,sectors_per_unit);
SIVAL(pdata,l1_cUnit,dsize);
diff --git a/source3/winbindd/idmap_ad_nss.c b/source3/winbindd/idmap_ad_nss.c
index 87c7814..d65e1e9 100644
--- a/source3/winbindd/idmap_ad_nss.c
+++ b/source3/winbindd/idmap_ad_nss.c
@@ -28,7 +28,7 @@
#include "includes.h"
#include "winbindd.h"
#include "../libds/common/flags.h"
-#include "ads.h"
+#include "winbindd_ads.h"
#include "libads/ldap_schema.h"
#include "nss_info.h"
#include "idmap.h"
diff --git a/source3/winbindd/idmap_rfc2307.c b/source3/winbindd/idmap_rfc2307.c
index 8ffa55b..668a7a4 100644
--- a/source3/winbindd/idmap_rfc2307.c
+++ b/source3/winbindd/idmap_rfc2307.c
@@ -25,7 +25,7 @@
#include "includes.h"
#include "winbindd.h"
-#include "ads.h"
+#include "winbindd_ads.h"
#include "idmap.h"
#include "smbldap.h"
#include "nsswitch/winbind_client.h"
diff --git a/source3/winbindd/winbindd_ads.c b/source3/winbindd/winbindd_ads.c
index d2e1ac4..c330b92 100644
--- a/source3/winbindd/winbindd_ads.c
+++ b/source3/winbindd/winbindd_ads.c
@@ -23,6 +23,7 @@
#include "includes.h"
#include "winbindd.h"
+#include "winbindd_ads.h"
#include "rpc_client/rpc_client.h"
#include "../librpc/gen_ndr/ndr_netlogon_c.h"
#include "../libds/common/flags.h"
diff --git a/lib/util/unix_match.h b/source3/winbindd/winbindd_ads.h
similarity index 70%
copy from lib/util/unix_match.h
copy to source3/winbindd/winbindd_ads.h
index a7b6935..5f121c8 100644
--- a/lib/util/unix_match.h
+++ b/source3/winbindd/winbindd_ads.h
@@ -1,7 +1,9 @@
/*
Unix SMB/CIFS implementation.
- Utility functions for Samba
- Copyright (C) Jeremy Allison 2001
+
+ Winbind ADS backend functions
+
+ Copyright (C) Volker Lendecke 2017
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -17,9 +19,15 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _UNIX_MASK_H_
-#define _UNIX_MASK_H_
+#ifndef __WINBINDD_ADS_H__
+#define __WINBINDD_ADS_H__
+
+
+#include "ads.h"
+
+extern struct winbindd_methods ads_methods;
-bool unix_wild_match(const char *pattern, const char *string);
+ADS_STATUS ads_idmap_cached_connection(ADS_STRUCT **adsp,
+ const char *dom_name);
#endif
diff --git a/source3/winbindd/winbindd_proto.h
b/source3/winbindd/winbindd_proto.h
index ebd9b44..57b363a 100644
--- a/source3/winbindd/winbindd_proto.h
+++ b/source3/winbindd/winbindd_proto.h
@@ -23,8 +23,6 @@
#ifndef _WINBINDD_PROTO_H_
#define _WINBINDD_PROTO_H_
-#include "ads.h"
-
/* The following definitions come from winbindd/winbindd.c */
struct messaging_context *winbind_messaging_context(void);
struct imessaging_context *winbind_imessaging_context(void);
@@ -956,9 +954,6 @@ NTSTATUS open_internal_lsa_conn(TALLOC_CTX *mem_ctx,
struct rpc_pipe_client **lsa_pipe,
struct policy_handle *lsa_hnd);
-/* The following definitions come from winbindd/winbindd_ads.c */
-ADS_STATUS ads_idmap_cached_connection(ADS_STRUCT **adsp, const char
*dom_name);
-
/* The following definitions come from winbindd/winbindd_irpc.c */
NTSTATUS wb_irpc_register(void);
--
Samba Shared Repository