summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2006-07-10 20:37:40 +0000
committerGerald Carter <jerry@samba.org>2006-07-10 20:37:40 +0000
commit4d5ef356461e7939a83e95096e5fdeeb277912db (patch)
treea2a5a18f00772d2df7ca274ff42cef4598d009e9
parente3b0c59151fc45a7bcc1c099ed71c9783f15acd5 (diff)
downloadsamba-4d5ef356461e7939a83e95096e5fdeeb277912db.tar.gz
samba-4d5ef356461e7939a83e95096e5fdeeb277912db.tar.xz
samba-4d5ef356461e7939a83e95096e5fdeeb277912db.zip
r16925: final changes for 3.0.23
-rw-r--r--WHATSNEW.txt3
-rwxr-xr-xpackaging/bin/update-pkginfo8
-rw-r--r--source/smbd/service.c5
3 files changed, 14 insertions, 2 deletions
diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index 0accd7829ac..cb8bd59f2b7 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -1,6 +1,6 @@
==============================
Release Notes for Samba 3.0.23
- Jun XX, 2006
+ Jul 10, 2006
==============================
This is the latest stable release of Samba. This is the version
@@ -203,6 +203,7 @@ o Volker Lendecke <vl@samba.org>
* Fix compile warnings when passing NULL to snprintf().
* BUG 3915: Fall back to a pure unix user with S-1-22 SIDs in the
token in case anything weird is going on with the 'force user'.
+ * CVE-2006-3403: Fix minor memory exhaustion DoS in smbd.
o Jason Mader <jason@ncac.gwu.edu>
diff --git a/packaging/bin/update-pkginfo b/packaging/bin/update-pkginfo
index bcd383e4340..020c773da08 100755
--- a/packaging/bin/update-pkginfo
+++ b/packaging/bin/update-pkginfo
@@ -4,6 +4,12 @@ VERSION=$1
RELEASE=$2
REVISION=$3
+if [ "x${REVISION}" = "x" ]; then
+ RPMREVISION=""
+else
+ RPMREVISION=".${REVISION}"
+fi
+
if [ $# -ne 3 ]; then
echo Usage: update-pkginfo VERSION RELEASE REVISION
exit 1
@@ -17,6 +23,6 @@ for f in `du -a | awk '{print $2}' | grep \.tmpl$`; do
sed -e s/PVERSION/$VERSION/g \
-e s/PRELEASE/$RELEASE/g \
-e s/PREVISION/${REVISION}/g \
- -e s/PRPMREV/.${REVISION}/g < $f > $f2
+ -e s/PRPMREV/${RPMREVISION}/g < $f > $f2
done
diff --git a/source/smbd/service.c b/source/smbd/service.c
index cb9bfcc27ae..fdbb84735e1 100644
--- a/source/smbd/service.c
+++ b/source/smbd/service.c
@@ -1014,6 +1014,11 @@ connection_struct *make_connection(const char *service_in, DATA_BLOB password,
smb_panic("make_connection: PANIC ERROR. Called as nonroot\n");
}
+ if (conn_num_open() > 2047) {
+ *status = NT_STATUS_INSUFF_SERVER_RESOURCES;
+ return NULL;
+ }
+
if(lp_security() != SEC_SHARE) {
vuser = get_valid_user_struct(vuid);
if (!vuser) {