--- /dev/null
+--- cyrus-sasl-2.1.20/lib/client.c~ 2003-11-11 16:26:06.000000000 +0000
++++ cyrus-sasl-2.1.20/lib/client.c 2005-04-24 15:57:59.000000000 +0000
+@@ -61,7 +61,7 @@
+
+ static cmech_list_t *cmechlist; /* global var which holds the list */
+
+-static sasl_global_callbacks_t global_callbacks;
++sasl_global_callbacks_t global_callbacks;
+
+ static int _sasl_client_active = 0;
+
+--- cyrus-sasl-2.1.20/saslauthd/configure.in.orig 2005-04-24 16:39:30.088004312 +0000
++++ cyrus-sasl-2.1.20/saslauthd/configure.in 2005-04-24 16:40:31.172718024 +0000
+@@ -44,9 +44,10 @@
+ SASL_GSSAPI_CHK
+
+ if test "$gssapi" != no; then
+- if test "$gss_impl" = "heimdal"; then
+- AC_DEFINE(KRB5_HEIMDAL,[],[Using Heimdal])
+- fi
++dnl This is taken care of by -DKRB5_HEIMDAL in CPPFLAGS in ../Makefile
++dnl if test "$gss_impl" = "heimdal"; then
++dnl AC_DEFINE(KRB5_HEIMDAL,[],[Using Heimdal])
++dnl fi
+ AC_DEFINE(HAVE_GSSAPI,[],[Include GSSAPI/Kerberos 5 Support])
+ fi
+
+--- cyrus-sasl-2.1.20/saslauthd/saslcache.c.orig 2005-04-24 16:47:45.989615808 +0000
++++ cyrus-sasl-2.1.20/saslauthd/saslcache.c 2005-04-24 16:50:27.482065224 +0000
+@@ -137,7 +137,7 @@
+ }
+
+ table_stats = shm_base + 64;
+- (char *)table = (char *)table_stats + 128;
++ table = (struct bucket*)((char *)table_stats + 128);
+
+ if (dump_stat_info == 0 && dump_user_info == 0)
+ dump_stat_info = 1;