SHA256
1
0
forked from pool/cyrus-sasl

Accepting request 198419 from home:j-engel:branches:network

Update to 2.1.26 now without server side service for download of source file.
Again please note that several other packages (notably openldap) need a rebuild with the new version due to the change in the lib version.

OBS-URL: https://build.opensuse.org/request/show/198419
OBS-URL: https://build.opensuse.org/package/show/network/cyrus-sasl?expand=0&rev=38
This commit is contained in:
Marcus Meissner 2013-09-20 15:12:20 +00:00 committed by Git OBS Bridge
parent f8c9d6609e
commit 4b99a5914b
13 changed files with 102 additions and 400 deletions

View File

@ -1,74 +0,0 @@
commit 8fc14fd702897e652a38384af2f55e51752e8c15
Author: Alexey Melnikov <alexey.melnikov@isode.com>
Date: Tue May 29 16:00:47 2012 +0100
get_fqhostname() function has broken logic when abort_if_no_fqdn is 0
When abort_if_no_fqdn is 0, a getaddrinfo failure should be ignored,
as long as gethostname() succeeded.
Cyrus SASL Bug # 3589
Patch by baggins@pld-linux.org
diff --git a/lib/saslutil.c b/lib/saslutil.c
index fc5b774..6174124 100644
--- a/lib/saslutil.c
+++ b/lib/saslutil.c
@@ -557,32 +557,44 @@ int get_fqhostname(
NULL, /* don't care abour service/port */
&hints,
&result) != 0) {
- /* errno on Unix, WSASetLastError on Windows are already done by the function */
- return (-1);
+ if (abort_if_no_fqdn) {
+ /* errno on Unix, WSASetLastError on Windows are already done by the function */
+ return (-1);
+ } else {
+ goto LOWERCASE;
+ }
}
- if (abort_if_no_fqdn && (result == NULL || result->ai_canonname == NULL)) {
+ if (result == NULL || result->ai_canonname == NULL) {
freeaddrinfo (result);
+ if (abort_if_no_fqdn) {
#ifdef WIN32
- WSASetLastError (WSANO_DATA);
+ WSASetLastError (WSANO_DATA);
#elif defined(ENODATA)
- errno = ENODATA;
+ errno = ENODATA;
#elif defined(EADDRNOTAVAIL)
- errno = EADDRNOTAVAIL;
+ errno = EADDRNOTAVAIL;
#endif
- return (-1);
+ return (-1);
+ } else {
+ goto LOWERCASE;
+ }
}
- if (abort_if_no_fqdn && strchr (result->ai_canonname, '.') == NULL) {
+ if (strchr (result->ai_canonname, '.') == NULL) {
freeaddrinfo (result);
+ if (abort_if_no_fqdn) {
#ifdef WIN32
- WSASetLastError (WSANO_DATA);
+ WSASetLastError (WSANO_DATA);
#elif defined(ENODATA)
- errno = ENODATA;
+ errno = ENODATA;
#elif defined(EADDRNOTAVAIL)
- errno = EADDRNOTAVAIL;
+ errno = EADDRNOTAVAIL;
#endif
- return (-1);
+ return (-1);
+ } else {
+ goto LOWERCASE;
+ }
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eb6e66b93a1d18182905e737cbe2cbdaaa70dcfa677afc2f4cd3b0df59c16161
size 1330164

3
cyrus-sasl-2.1.26.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8fbc5136512b59bb793657f36fadda6359cae3b08f01fd16b3d406f1345b7bc3
size 5220231

View File

@ -1,39 +0,0 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2013-06-14 02:40:23.947245857 +0200
X-Upstream: This patch becomes obsolete with cyrus-sasl-2.1.26
src: fix sloppy DB version >= 4.1 check
Look! db-6.0 has hit the scene.
---
sasldb/db_berkeley.c | 2 +-
utils/dbconverter-2.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Index: cyrus-sasl-2.1.25/sasldb/db_berkeley.c
===================================================================
--- cyrus-sasl-2.1.25.orig/sasldb/db_berkeley.c
+++ cyrus-sasl-2.1.25/sasldb/db_berkeley.c
@@ -101,7 +101,7 @@ static int berkeleydb_open(const sasl_ut
ret = db_create(mbdb, NULL, 0);
if (ret == 0 && *mbdb != NULL)
{
-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1
+#if DB_VERSION_MAJOR > 4 || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660);
#else
ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660);
Index: cyrus-sasl-2.1.25/utils/dbconverter-2.c
===================================================================
--- cyrus-sasl-2.1.25.orig/utils/dbconverter-2.c
+++ cyrus-sasl-2.1.25/utils/dbconverter-2.c
@@ -214,7 +214,7 @@ static int berkeleydb_open(const char *p
ret = db_create(mbdb, NULL, 0);
if (ret == 0 && *mbdb != NULL)
{
-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1
+#if DB_VERSION_MAJOR > 4 || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)
ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664);
#else
ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664);

View File

@ -1,13 +0,0 @@
Index: lib/saslint.h
===================================================================
--- lib/saslint.h.orig
+++ lib/saslint.h
@@ -118,8 +118,6 @@ typedef struct {
const char *appname;
} sasl_global_callbacks_t;
-extern sasl_global_callbacks_t global_callbacks;
-
typedef struct _sasl_external_properties
{
sasl_ssf_t ssf;

View File

@ -1,204 +0,0 @@
Index: cyrus-sasl-2.1.25/plugins/gs2.c
===================================================================
--- cyrus-sasl-2.1.25.orig/plugins/gs2.c
+++ cyrus-sasl-2.1.25/plugins/gs2.c
@@ -336,7 +336,7 @@ gs2_server_mech_step(void *conn_context,
gss_name_t without = GSS_C_NO_NAME;
gss_OID_set_desc mechs;
OM_uint32 out_flags = 0;
- int ret = 0, equal = 0;
+ int ret = SASL_OK, equal = 0;
int initialContextToken = (text->gss_ctx == GSS_C_NO_CONTEXT);
char *p;
@@ -463,14 +463,12 @@ gs2_server_mech_step(void *conn_context,
GSS_C_NT_USER_NAME,
&without);
if (GSS_ERROR(maj_stat)) {
- ret = SASL_FAIL;
goto cleanup;
}
maj_stat = gss_compare_name(&min_stat, text->client_name,
without, &equal);
if (GSS_ERROR(maj_stat)) {
- ret = SASL_FAIL;
goto cleanup;
}
@@ -486,8 +484,9 @@ gs2_server_mech_step(void *conn_context,
ret = params->canon_user(params->utils->conn,
text->authzid, 0,
SASL_CU_AUTHZID, oparams);
- if (ret != SASL_OK)
+ if (ret != SASL_OK) {
goto cleanup;
+ }
}
ret = params->canon_user(params->utils->conn,
@@ -496,8 +495,9 @@ gs2_server_mech_step(void *conn_context,
? (SASL_CU_AUTHZID | SASL_CU_AUTHID)
: SASL_CU_AUTHID,
oparams);
- if (ret != SASL_OK)
+ if (ret != SASL_OK) {
goto cleanup;
+ }
switch (text->gs2_flags & GS2_CB_FLAG_MASK) {
case GS2_CB_FLAG_N:
@@ -528,19 +528,23 @@ gs2_server_mech_step(void *conn_context,
ret = SASL_OK;
cleanup:
- if (initialContextToken)
+ if (ret == SASL_OK && maj_stat != GSS_S_COMPLETE) {
+ sasl_gs2_seterror(text->utils, maj_stat, min_stat);
+ ret = SASL_FAIL;
+ }
+
+////Can set maj_stat to gss_release_buffer return value and check
+ if (initialContextToken) {
gss_release_buffer(&min_stat, &input_token);
+ }
gss_release_buffer(&min_stat, &name_buf);
gss_release_buffer(&min_stat, &short_name_buf);
gss_release_buffer(&min_stat, &output_token);
gss_release_name(&min_stat, &without);
- if (ret == SASL_OK && maj_stat != GSS_S_COMPLETE) {
- sasl_gs2_seterror(text->utils, maj_stat, min_stat);
- ret = SASL_FAIL;
- }
- if (ret < SASL_OK)
+ if (ret < SASL_OK) {
sasl_gs2_free_context_contents(text);
+ }
return ret;
}
@@ -698,12 +702,14 @@ static int gs2_client_mech_step(void *co
if (text->gss_ctx == GSS_C_NO_CONTEXT) {
ret = gs2_get_init_creds(text, params, prompt_need, oparams);
- if (ret != SASL_OK)
+ if (ret != SASL_OK) {
goto cleanup;
+ }
initialContextToken = 1;
- } else
+ } else {
initialContextToken = 0;
+ }
if (text->server_name == GSS_C_NO_NAME) { /* only once */
name_buf.length = strlen(params->service) + 1 + strlen(params->serverFQDN);
@@ -729,8 +735,10 @@ static int gs2_client_mech_step(void *co
params->utils->free(name_buf.value);
name_buf.value = NULL;
- if (GSS_ERROR(maj_stat))
+ if (GSS_ERROR(maj_stat)) {
+ ret = SASL_OK;
goto cleanup;
+ }
}
/* From GSSAPI plugin: apparently this is for some IMAP bug workaround */
@@ -762,8 +770,9 @@ static int gs2_client_mech_step(void *co
strcmp(oparams->user, oparams->authid) ?
(char *) oparams->user : NULL,
&text->out_buf, &text->out_buf_len);
- if (ret != 0)
+ if (ret != 0) {
goto cleanup;
+ }
}
req_flags = GSS_C_MUTUAL_FLAG | GSS_C_SEQUENCE_FLAG;
@@ -783,13 +792,16 @@ static int gs2_client_mech_step(void *co
&output_token,
&ret_flags,
&text->lifetime);
- if (GSS_ERROR(maj_stat))
+ if (GSS_ERROR(maj_stat)) {
+ ret = SASL_OK;
goto cleanup;
+ }
ret = gs2_make_message(text, params, initialContextToken, &output_token,
&text->out_buf, &text->out_buf_len);
- if (ret != 0)
+ if (ret != 0) {
goto cleanup;
+ }
*clientout = text->out_buf;
*clientoutlen = text->out_buf_len;
@@ -799,9 +811,9 @@ static int gs2_client_mech_step(void *co
goto cleanup;
}
- if (text->client_name != GSS_C_NO_NAME)
+ if (text->client_name != GSS_C_NO_NAME) {
gss_release_name(&min_stat, &text->client_name);
-
+ }
maj_stat = gss_inquire_context(&min_stat,
text->gss_ctx,
&text->client_name,
@@ -811,11 +823,13 @@ static int gs2_client_mech_step(void *co
&ret_flags, /* flags */
NULL,
NULL);
- if (GSS_ERROR(maj_stat))
+ if (GSS_ERROR(maj_stat)) {
+ ret = SASL_OK;
goto cleanup;
+ }
if ((ret_flags & req_flags) != req_flags) {
- maj_stat = SASL_BADAUTH;
+ ret = SASL_BADAUTH;
goto cleanup;
}
@@ -823,8 +837,10 @@ static int gs2_client_mech_step(void *co
text->client_name,
&name_buf,
NULL);
- if (GSS_ERROR(maj_stat))
+ if (GSS_ERROR(maj_stat)) {
+ ret = SASL_OK;
goto cleanup;
+ }
oparams->gss_peer_name = text->server_name;
oparams->gss_local_name = text->client_name;
@@ -834,16 +850,20 @@ static int gs2_client_mech_step(void *co
oparams->maxoutbuf = 0xFFFFFF;
oparams->doneflag = 1;
-cleanup:
- gss_release_buffer(&min_stat, &output_token);
- gss_release_buffer(&min_stat, &name_buf);
+ ret = SASL_OK;
+cleanup:
if (ret == SASL_OK && maj_stat != GSS_S_COMPLETE) {
sasl_gs2_seterror(text->utils, maj_stat, min_stat);
ret = SASL_FAIL;
}
- if (ret < SASL_OK)
+
+ gss_release_buffer(&min_stat, &output_token);
+ gss_release_buffer(&min_stat, &name_buf);
+
+ if (ret < SASL_OK) {
sasl_gs2_free_context_contents(text);
+ }
return ret;
}

View File

@ -27,7 +27,7 @@
--- plugins/Makefile.am.orig
+++ plugins/Makefile.am
@@ -49,7 +49,8 @@
plugin_version = 2:25:0
plugin_version = 3:0:0
INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/sasldb -I$(top_builddir)/include
-AM_LDFLAGS = -module -export-dynamic -rpath $(plugindir) -version-info $(plugin_version)
@ -39,12 +39,12 @@
--- lib/Makefile.am.orig
+++ lib/Makefile.am
@@ -43,7 +43,8 @@
# Library version info - here at the top, for sanity
sasl_version = 2:25:0
# CURRENT:REVISION:AGE
sasl_version = 3:0:0
-INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb
-INCLUDES=-DLIBSASL_EXPORTS=1 -I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb
+
+AM_CPPFLAGS= -include $(top_builddir)/config.h -I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb
+AM_CPPFLAGS=-DLIBSASL_EXPORTS=1 -include $(top_builddir)/config.h -I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb
EXTRA_DIST = windlopen.c staticopen.h NTMakefile
EXTRA_LIBRARIES = libsasl2.a

View File

@ -1,7 +1,7 @@
Index: cyrus-sasl-2.1.25/cmulocal/cyrus.m4
Index: cyrus-sasl-2.1.26/cmulocal/cyrus.m4
===================================================================
--- cyrus-sasl-2.1.25.orig/cmulocal/cyrus.m4
+++ cyrus-sasl-2.1.25/cmulocal/cyrus.m4
--- cyrus-sasl-2.1.26.orig/cmulocal/cyrus.m4
+++ cyrus-sasl-2.1.26/cmulocal/cyrus.m4
@@ -32,14 +32,5 @@ AC_DEFUN([CMU_ADD_LIBPATH_TO], [
dnl runpath initialization
AC_DEFUN([CMU_GUESS_RUNPATH_SWITCH], [
@ -17,5 +17,5 @@ Index: cyrus-sasl-2.1.25/cmulocal/cyrus.m4
- ])
- LDFLAGS="${SAVE_LDFLAGS}"
- ])])
+ andrew_cv_runpath_switch="none"
+ ])
+ andrew_cv_runpath_switch="none"
+])

View File

@ -1,3 +1,26 @@
-------------------------------------------------------------------
Sun Sep 8 21:11:27 UTC 2013 - jcnengel@googlemail.com
- Update to 2.1.26
* Modernize SASL malloc/realloc callback prototypes
* Added sasl_config_done() to plug a memory leak when using an application specific config file
* Fixed PLAIN/LOGIN authentication failure when using saslauthd with no auxprop plugins (bug # 3590).
* unlock the mutex in sasl_dispose if the context was freed by another thread
* MINGW32 compatibility patches
* Fixed broken logic in get_fqhostname() when abort_if_no_fqdn is 0
* Fixed some memory leaks in libsasl
- saslauthd:
+ auth_rimap.c: qstring incorrectly appending the closing double quote, which might be causing crashes
+ auth_rimap.c: read the whole IMAP greeting
+ better error reporting from some drivers
+ fixed some memory leaks
- Removed patches that do no longer apply
* cyrus-sasl-gcc4.patch (integrated upstream)
* cyrus-sasl-gs2-not-overwrite-minor-error-code.dif (integrated upstream)
* gssapi-null-deref.dif (integrated upstream)
* Fix-abort_if_no_fqdn-behavior.patch (integrated upstream)
* cyrus-sasl-db6.diff (integrated upstream)
-------------------------------------------------------------------
Fri Jul 26 13:09:51 UTC 2013 - obs@botter.cc

View File

@ -29,21 +29,16 @@ Url: http://asg.web.cmu.edu/sasl/
Summary: The SASL Authentication Server
License: BSD-4-Clause
Group: Productivity/Networking/Other
Version: 2.1.25
Version: 2.1.26
Release: 0
Source: cyrus-sasl-%{version}.tar.bz2
Source: ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-%{version}.tar.gz
Source1: cyrus-sasl-rc.tar.bz2
Source2: README.Source
Source3: baselibs.conf
Patch: cyrus-sasl.dif
Patch1: shared_link_on_ppc.patch
Patch2: cyrus-sasl-gcc4.patch
Patch3: cyrus-sasl-gs2-not-overwrite-minor-error-code.dif
Patch4: gssapi-null-deref.dif
Patch5: cyrus-sasl-no_rpath.patch
Patch6: cyrus-sasl-lfs.patch
Patch7: Fix-abort_if_no_fqdn-behavior.patch
Patch8: cyrus-sasl-db6.diff
PreReq: %insserv_prereq %fillup_prereq
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@ -74,11 +69,8 @@ The SQL auxprop plugin supports PostgreSQL and MySQL
%patch1
%patch2
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6
%patch7 -p1
%patch -P 8 -p1
%build
find . -name \*.cvsignore -print0 | xargs -0 rm -vf

View File

@ -1,3 +1,49 @@
-------------------------------------------------------------------
Wed Sep 11 07:16:23 UTC 2013 - jcnengel@gmail.com
- Removed server side service to comply with Factory rules
-------------------------------------------------------------------
Tue Sep 3 22:07:15 UTC 2013 - jcnengel@gmail.com
- Update to 2.1.26
* Modernize SASL malloc/realloc callback prototypes
* Added sasl_config_done() to plug a memory leak when using an application specific config file
* Fixed PLAIN/LOGIN authentication failure when using saslauthd with no auxprop plugins (bug # 3590).
* unlock the mutex in sasl_dispose if the context was freed by another thread
* MINGW32 compatibility patches
* Fixed broken logic in get_fqhostname() when abort_if_no_fqdn is 0
* Fixed some memory leaks in libsasl
- GSSAPI plugin:
+ Fixed a segfault in gssapi.c introduced in 2.1.25.
+ Code refactoring
+ Added support for GSS-SPNEGO SASL mechanism (Unix only), which is also HTTP capable
- GS2 plugin:
+ Updated GS2 plugin not to lose minor GSS-API status codes on errors
- DIGEST-MD5 plugin:
+ Correctly send "stale" directive to prevent clients from (re)promtping for password
+ Better handling of HTTP reauthentication cases
+ fixed some memory leaks
- SASLDB plugin:
+ Added support for BerkleyDB 5.X or later
- OTP plugin:
+ Removed calling of EVP_cleanup() on plugin shutdown in order to prevent TLS from failing in calling applications
- SRP plugin:
+ Removed calling of EVP_cleanup() on plugin shutdown in order to prevent TLS from failing in calling applications
- saslauthd:
+ auth_rimap.c: qstring incorrectly appending the closing double quote, which might be causing crashes
+ auth_rimap.c: read the whole IMAP greeting
+ better error reporting from some drivers
+ fixed some memory leaks
- New BuildRequires for pkgconfig since pkgconfig file is generated
- Removed patches that do no longer apply
* cyrus-sasl-gcc4.patch (integrated upstream)
* cyrus-sasl-gs2-not-overwrite-minor-error-code.dif (integrated upstream)
* gssapi-null-deref.dif (integrated upstream)
* Fix-abort_if_no_fqdn-behavior.patch (integrated upstream)
* cyrus-sasl-db6.diff (integrated upstream)
- Move *.so files into devel package
-------------------------------------------------------------------
Fri Jul 26 13:09:51 UTC 2013 - obs@botter.cc

View File

@ -17,7 +17,7 @@
Name: cyrus-sasl
Version: 2.1.25
Version: 2.1.26
Release: 0
BuildRequires: db-devel
BuildRequires: krb5-mini-devel
@ -25,6 +25,7 @@ BuildRequires: libtool
BuildRequires: openssl-devel
BuildRequires: opie
BuildRequires: pam-devel
BuildRequires: pkg-config
Url: http://asg.web.cmu.edu/sasl/
# bug437293
%ifarch ppc64
@ -34,19 +35,14 @@ Obsoletes: cyrus-sasl-64bit
Summary: Implementation of Cyrus SASL API
License: BSD-4-Clause
Group: Productivity/Networking/Other
Source: cyrus-sasl-%{version}.tar.bz2
Source: ftp://ftp.cyrusimap.org/%{name}/%{name}-%{version}.tar.gz
Source1: cyrus-sasl-rc.tar.bz2
Source2: README.Source
Source3: baselibs.conf
Patch: cyrus-sasl.dif
Patch1: shared_link_on_ppc.patch
Patch2: cyrus-sasl-gcc4.patch
Patch3: cyrus-sasl-gs2-not-overwrite-minor-error-code.dif
Patch4: gssapi-null-deref.dif
Patch5: cyrus-sasl-no_rpath.patch
Patch6: cyrus-sasl-lfs.patch
Patch7: Fix-abort_if_no_fqdn-behavior.patch
Patch8: cyrus-sasl-db6.diff
PreReq: %insserv_prereq %fillup_prereq
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@ -153,17 +149,12 @@ information.
if [ -e %{_builddir}/%{name}-%{version}/dlcompat-*/ ]
then
echo "dlcompat contains potential legal risks."
exit 1;
rm -rf %{_builddir}/%{name}-%{version}/dlcompat-*
fi
%patch
%patch1
%patch2
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6
%patch7 -p1
%patch -P 8 -p1
%patch6
%build
find . -name \*.cvsignore -print0 | xargs -0 rm -fv
@ -205,9 +196,9 @@ find "%buildroot" -type f -name "*.la" -print -delete
%defattr(-,root,root)
%dir %{_libdir}/sasl2
%dir /etc/sasl2/
%{_libdir}/sasl2/libanonymous.so*
%{_libdir}/sasl2/liblogin.so*
%{_libdir}/sasl2/libsasldb.so*
%{_libdir}/sasl2/libanonymous.so.*
%{_libdir}/sasl2/liblogin.so.*
%{_libdir}/sasl2/libsasldb.so.*
%{_libdir}/libsasl2.so.*
/usr/sbin/*
/usr/bin/*
@ -217,35 +208,35 @@ find "%buildroot" -type f -name "*.la" -print -delete
%files gssapi
%defattr(-,root,root)
%{_libdir}/sasl2/libgssapiv2.so*
%{_libdir}/sasl2/libgssapiv2.so.*
%files crammd5
%defattr(-,root,root)
%{_libdir}/sasl2/libcrammd5.so*
%{_libdir}/sasl2/libcrammd5.so.*
%files digestmd5
%defattr(-,root,root)
%{_libdir}/sasl2/libdigestmd5.so*
%{_libdir}/sasl2/libdigestmd5.so.*
%files otp
%defattr(-,root,root)
%{_libdir}/sasl2/libotp.so*
%{_libdir}/sasl2/libotp.so.*
%files plain
%defattr(-,root,root)
%{_libdir}/sasl2/libplain.so*
%{_libdir}/sasl2/libplain.so.*
%files ntlm
%defattr(-,root,root)
%{_libdir}/sasl2/libntlm.so*
%{_libdir}/sasl2/libntlm.so.*
%files gs2
%defattr(-,root,root)
%{_libdir}/sasl2/libgs2.so*
%{_libdir}/sasl2/libgs2.so.*
%files scram
%defattr(-,root,root)
%{_libdir}/sasl2/libscram.so*
%{_libdir}/sasl2/libscram.so.*
%files devel
%defattr(-,root,root)
@ -253,5 +244,7 @@ find "%buildroot" -type f -name "*.la" -print -delete
/usr/include/sasl
%doc %{_mandir}/man3/sasl_*.gz
%{_libdir}/libsasl2.so
%{_libdir}/pkgconfig/*
%{_libdir}/sasl2/lib*.so
%changelog

View File

@ -1,22 +0,0 @@
Index: cyrus-sasl-2.1.25/plugins/gssapi.c
===================================================================
--- cyrus-sasl-2.1.25.orig/plugins/gssapi.c
+++ cyrus-sasl-2.1.25/plugins/gssapi.c
@@ -370,7 +370,7 @@ sasl_gss_encode(void *context, const str
}
if (output_token->value && output) {
- unsigned char * p = (unsigned char *) text->encode_buf;
+ unsigned char * p;
ret = _plug_buf_alloc(text->utils,
&(text->encode_buf),
@@ -384,6 +384,8 @@ sasl_gss_encode(void *context, const str
return ret;
}
+ p = (unsigned char *) text->encode_buf;
+
p[0] = (output_token->length>>24) & 0xFF;
p[1] = (output_token->length>>16) & 0xFF;
p[2] = (output_token->length>>8) & 0xFF;