* Mon Aug 11 2008 Simo Sorce <ssorce@redhat.com> - 3.2.1-1.18

- Add fix for CUPS problem, fixes bug #453951
This commit is contained in:
Simo Sorce 2008-08-11 15:19:06 +00:00
parent 2ee8b397c9
commit e9114c66e7
2 changed files with 77 additions and 1 deletions

View File

@ -0,0 +1,71 @@
From 1ee1e8306f3578c19fe015145eb8da1013f7b820 Mon Sep 17 00:00:00 2001
From: Jeremy Allison <jra@samba.org>
Date: Thu, 7 Aug 2008 17:56:50 -0700
Subject: [PATCH] Fix bug #5675 with a varient of Tim Waugh's patch,
as proposed by James Peach.
Jeremy.
---
source/client/smbspool.c | 2 +-
source/include/client.h | 1 +
source/libsmb/cliconnect.c | 5 ++---
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/client/smbspool.c b/source/client/smbspool.c
index e567ef8..f35a9d3 100644
--- a/source/client/smbspool.c
+++ b/source/client/smbspool.c
@@ -347,7 +347,7 @@ get_exit_code(struct cli_state * cli,
}
if (cli) {
- if (cli->use_kerberos || (cli->capabilities & CAP_EXTENDED_SECURITY))
+ if (cli->use_kerberos && cli->got_kerberos_mechanism)
fputs("ATTR: auth-info-required=negotiate\n", stderr);
else
fputs("ATTR: auth-info-required=username,password\n", stderr);
diff --git a/source/include/client.h b/source/include/client.h
index 0e73745..833f4b4 100644
--- a/source/include/client.h
+++ b/source/include/client.h
@@ -184,6 +184,7 @@ struct cli_state {
bool use_kerberos;
bool fallback_after_kerberos;
bool use_spnego;
+ bool got_kerberos_mechanism; /* Server supports krb5 in SPNEGO. */
bool use_oplocks; /* should we use oplocks? */
bool use_level_II_oplocks; /* should we use level II oplocks? */
diff --git a/source/libsmb/cliconnect.c b/source/libsmb/cliconnect.c
index 632d910..5993cd3 100644
--- a/source/libsmb/cliconnect.c
+++ b/source/libsmb/cliconnect.c
@@ -797,7 +797,6 @@ ADS_STATUS cli_session_setup_spnego(struct cli_state *cli, const char *user,
char *principal = NULL;
char *OIDs[ASN1_MAX_OIDS];
int i;
- bool got_kerberos_mechanism = False;
DATA_BLOB blob;
const char *p = NULL;
char *account = NULL;
@@ -832,7 +831,7 @@ ADS_STATUS cli_session_setup_spnego(struct cli_state *cli, const char *user,
DEBUG(3,("got OID=%s\n", OIDs[i]));
if (strcmp(OIDs[i], OID_KERBEROS5_OLD) == 0 ||
strcmp(OIDs[i], OID_KERBEROS5) == 0) {
- got_kerberos_mechanism = True;
+ cli->got_kerberos_mechanism = True;
}
free(OIDs[i]);
}
@@ -845,7 +844,7 @@ ADS_STATUS cli_session_setup_spnego(struct cli_state *cli, const char *user,
/* If password is set we reauthenticate to kerberos server
* and do not store results */
- if (got_kerberos_mechanism && cli->use_kerberos) {
+ if (cli->got_kerberos_mechanism && cli->use_kerberos) {
ADS_STATUS rc;
if (pass && *pass) {
--
1.5.5.1

View File

@ -3,7 +3,7 @@
%define tdb_version 1.1.1
%define talloc_version 1.2.0
%define samba_release 0.%{main_release}%{?dist}
%define samba_release 1.%{main_release}%{?dist}
Summary: The Samba Suite of programs
Name: samba
@ -46,6 +46,7 @@ Patch107: samba-3.2.0pre1-grouppwd.patch
Patch110: samba-3.0.21pre1-smbspool.patch
Patch111: samba-3.0.13-smbclient.patch
Patch200: samba-3.0.25rc1-inotifiy.patch
Patch201: samba-3.2.1-cups-bug-5675.patch
Requires(pre): samba-common = %{epoch}:%{version}-%{release}
Requires: pam >= 0:0.64
@ -252,6 +253,7 @@ cp %{SOURCE11} packaging/Fedora/
#%patch110 -p1 -b .smbspool # FIXME: does not apply
#%patch111 -p1 -b .smbclient # FIXME: does not apply
#%patch200 -p0 -b .inotify # FIXME: does not compile
%patch201 -p1 -b .cups_5675
mv source/VERSION source/VERSION.orig
sed -e 's/SAMBA_VERSION_VENDOR_SUFFIX=$/&\"%{samba_release}\"/' < source/VERSION.orig > source/VERSION
@ -846,6 +848,9 @@ exit 0
%{_datadir}/pixmaps/samba/logo-small.png
%changelog
* Mon Aug 11 2008 Simo Sorce <ssorce@redhat.com> - 3.2.1-1.18
- Add fix for CUPS problem, fixes bug #453951
* Wed Aug 6 2008 Simo Sorce <ssorce@redhat.com> - 3.2.1-0.18
- Update to 3.2.1