components/samba/samba/patches/gse.c-gss_wrap_iov.patch
changeset 4371 29fdb14099eb
equal deleted inserted replaced
4370:7043c27399f1 4371:29fdb14099eb
       
     1 Source: Home brewed
       
     2 Fixes issues with differences of Solaris krb5 and MIT krb5
       
     3 
       
     4 --- a/source3/librpc/crypto/gse.c	2013-06-13 09:21:02.000000000 +0000
       
     5 +++ samba-4.1.7/source3/librpc/crypto/gse.c	2014-06-23 10:13:27.336923606 +0000
       
     6 @@ -543,6 +543,7 @@
       
     7  static size_t gse_get_signature_length(struct gse_context *gse_ctx,
       
     8  				       bool seal, size_t payload_size)
       
     9  {
       
    10 +#if defined(HAVE_GSS_WRAP_IOV)
       
    11  	OM_uint32 gss_min, gss_maj;
       
    12  	gss_iov_buffer_desc iov[2];
       
    13  	int sealed;
       
    14 @@ -567,11 +568,15 @@
       
    15  	}
       
    16  
       
    17  	return iov[0].buffer.length;
       
    18 +#else
       
    19 +	return NT_STATUS_NOT_IMPLEMENTED;
       
    20 +#endif /* HAVE_GSS_WRAP_IOV */
       
    21  }
       
    22  
       
    23  static NTSTATUS gse_seal(TALLOC_CTX *mem_ctx, struct gse_context *gse_ctx,
       
    24  			 DATA_BLOB *data, DATA_BLOB *signature)
       
    25  {
       
    26 +#if defined(HAVE_GSS_WRAP_IOV)
       
    27  	OM_uint32 gss_min, gss_maj;
       
    28  	gss_iov_buffer_desc iov[2];
       
    29  	int req_seal = 1; /* setting to 1 means we request sign+seal */
       
    30 @@ -619,11 +624,15 @@
       
    31  
       
    32  done:
       
    33  	return status;
       
    34 +#else
       
    35 +	return NT_STATUS_NOT_IMPLEMENTED;
       
    36 +#endif /* HAVE_GSS_WRAP_IOV */
       
    37  }
       
    38  
       
    39  static NTSTATUS gse_unseal(TALLOC_CTX *mem_ctx, struct gse_context *gse_ctx,
       
    40  			   DATA_BLOB *data, const DATA_BLOB *signature)
       
    41  {
       
    42 +#if defined(HAVE_GSS_WRAP_IOV)
       
    43  	OM_uint32 gss_min, gss_maj;
       
    44  	gss_iov_buffer_desc iov[2];
       
    45  	int sealed;
       
    46 @@ -660,6 +669,9 @@
       
    47  
       
    48  done:
       
    49  	return status;
       
    50 +#else
       
    51 +	return NT_STATUS_NOT_IMPLEMENTED;
       
    52 +#endif /* HAVE_GSS_WRAP_IOV */
       
    53  }
       
    54  
       
    55  static NTSTATUS gse_sign(TALLOC_CTX *mem_ctx, struct gse_context *gse_ctx,