[SCM] Samba Shared Repository - branch v3-devel updated -
release-3-2-0pre2-3805-gb868463
jlayton at samba.org
jlayton at samba.org
Fri Aug 22 19:30:30 GMT 2008
The branch, v3-devel has been updated
via b868463015dedc684eb13d12118a98ccca71250a (commit)
from 8d0a16d8034cd07037b3c7711867280d5fa5b2c8 (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-devel
- Log -----------------------------------------------------------------
commit b868463015dedc684eb13d12118a98ccca71250a
Author: Jeff Layton <jlayton at redhat.com>
Date: Fri Aug 22 13:29:16 2008 -0400
cifs.upcall: bump SPNEGO msg version number and don't reject old versions
When we added the ability for the kernel to send sec=mskrb5 to the
upcall, we subtly broke old cifs.upcall versions that don't understand
it. Bump the spnego message version to 2 to make this clear. Also,
change cifs.upcall to not reject requests with a version that's lower
than the current one, and to send the reply with the same version that
the request sent. The idea is to try and keep cifs.upcall backward
compatible with old kernels.
Signed-off-by: Jeff Layton <jlayton at redhat.com>
-----------------------------------------------------------------------
Summary of changes:
source/client/cifs.upcall.c | 4 ++--
source/client/cifs_spnego.h | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/client/cifs.upcall.c b/source/client/cifs.upcall.c
index cf5f1c3..7cb5166 100644
--- a/source/client/cifs.upcall.c
+++ b/source/client/cifs.upcall.c
@@ -284,7 +284,7 @@ int main(const int argc, char *const argv[])
}
SAFE_FREE(buf);
- if (kernel_upcall_version != CIFS_SPNEGO_UPCALL_VERSION) {
+ if (kernel_upcall_version > CIFS_SPNEGO_UPCALL_VERSION) {
syslog(LOG_WARNING,
"incompatible kernel upcall version: 0x%x",
kernel_upcall_version);
@@ -353,7 +353,7 @@ int main(const int argc, char *const argv[])
rc = 1;
goto out;
}
- keydata->version = CIFS_SPNEGO_UPCALL_VERSION;
+ keydata->version = kernel_upcall_version;
keydata->flags = 0;
keydata->sesskey_len = sess_key.length;
keydata->secblob_len = secblob.length;
diff --git a/source/client/cifs_spnego.h b/source/client/cifs_spnego.h
index 13909dd..f8753a7 100644
--- a/source/client/cifs_spnego.h
+++ b/source/client/cifs_spnego.h
@@ -23,7 +23,7 @@
#ifndef _CIFS_SPNEGO_H
#define _CIFS_SPNEGO_H
-#define CIFS_SPNEGO_UPCALL_VERSION 1
+#define CIFS_SPNEGO_UPCALL_VERSION 2
/*
* The version field should always be set to CIFS_SPNEGO_UPCALL_VERSION.
--
Samba Shared Repository
More information about the samba-cvs
mailing list