components/samba/samba/patches/gse.c-gss_wrap_iov.patch
changeset 4371 29fdb14099eb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/samba/samba/patches/gse.c-gss_wrap_iov.patch	Fri Feb 27 10:07:56 2015 -0800
@@ -0,0 +1,55 @@
+Source: Home brewed
+Fixes issues with differences of Solaris krb5 and MIT krb5
+
+--- a/source3/librpc/crypto/gse.c	2013-06-13 09:21:02.000000000 +0000
++++ samba-4.1.7/source3/librpc/crypto/gse.c	2014-06-23 10:13:27.336923606 +0000
+@@ -543,6 +543,7 @@
+ static size_t gse_get_signature_length(struct gse_context *gse_ctx,
+ 				       bool seal, size_t payload_size)
+ {
++#if defined(HAVE_GSS_WRAP_IOV)
+ 	OM_uint32 gss_min, gss_maj;
+ 	gss_iov_buffer_desc iov[2];
+ 	int sealed;
+@@ -567,11 +568,15 @@
+ 	}
+ 
+ 	return iov[0].buffer.length;
++#else
++	return NT_STATUS_NOT_IMPLEMENTED;
++#endif /* HAVE_GSS_WRAP_IOV */
+ }
+ 
+ static NTSTATUS gse_seal(TALLOC_CTX *mem_ctx, struct gse_context *gse_ctx,
+ 			 DATA_BLOB *data, DATA_BLOB *signature)
+ {
++#if defined(HAVE_GSS_WRAP_IOV)
+ 	OM_uint32 gss_min, gss_maj;
+ 	gss_iov_buffer_desc iov[2];
+ 	int req_seal = 1; /* setting to 1 means we request sign+seal */
+@@ -619,11 +624,15 @@
+ 
+ done:
+ 	return status;
++#else
++	return NT_STATUS_NOT_IMPLEMENTED;
++#endif /* HAVE_GSS_WRAP_IOV */
+ }
+ 
+ static NTSTATUS gse_unseal(TALLOC_CTX *mem_ctx, struct gse_context *gse_ctx,
+ 			   DATA_BLOB *data, const DATA_BLOB *signature)
+ {
++#if defined(HAVE_GSS_WRAP_IOV)
+ 	OM_uint32 gss_min, gss_maj;
+ 	gss_iov_buffer_desc iov[2];
+ 	int sealed;
+@@ -660,6 +669,9 @@
+ 
+ done:
+ 	return status;
++#else
++	return NT_STATUS_NOT_IMPLEMENTED;
++#endif /* HAVE_GSS_WRAP_IOV */
+ }
+ 
+ static NTSTATUS gse_sign(TALLOC_CTX *mem_ctx, struct gse_context *gse_ctx,