From: Stefan Metzmacher Date: Wed, 30 Dec 2009 14:58:05 +0000 (+0100) Subject: s4:ntlmssp: split gensec_ntlmssp_sign_packet() and ntlmssp_sign_packet() X-Git-Tag: samba-3.6.0pre1~4074 X-Git-Url: http://git.samba.org/samba.git/?a=commitdiff_plain;h=23507c022f9d926cc15674ae0158ce55478cf202;p=kai%2Fsamba-autobuild%2F.git s4:ntlmssp: split gensec_ntlmssp_sign_packet() and ntlmssp_sign_packet() Inspired by the NTLMSSP merge work by Andrew Bartlett. metze Signed-off-by: Günther Deschner --- diff --git a/source4/auth/ntlmssp/ntlmssp_sign.c b/source4/auth/ntlmssp/ntlmssp_sign.c index 254fff82a00..4239a39ce59 100644 --- a/source4/auth/ntlmssp/ntlmssp_sign.c +++ b/source4/auth/ntlmssp/ntlmssp_sign.c @@ -129,19 +129,14 @@ static NTSTATUS ntlmssp_make_packet_signature(struct gensec_ntlmssp_state *gense return NT_STATUS_OK; } -/* TODO: make this non-public */ -NTSTATUS gensec_ntlmssp_sign_packet(struct gensec_security *gensec_security, - TALLOC_CTX *sig_mem_ctx, - const uint8_t *data, size_t length, - const uint8_t *whole_pdu, size_t pdu_length, - DATA_BLOB *sig) +NTSTATUS ntlmssp_sign_packet(struct gensec_ntlmssp_state *ntlmssp_state, + TALLOC_CTX *sig_mem_ctx, + const uint8_t *data, size_t length, + const uint8_t *whole_pdu, size_t pdu_length, + DATA_BLOB *sig) { - struct gensec_ntlmssp_context *gensec_ntlmssp = - talloc_get_type_abort(gensec_security->private_data, - struct gensec_ntlmssp_context); - struct gensec_ntlmssp_state *gensec_ntlmssp_state = gensec_ntlmssp->ntlmssp_state; - - return ntlmssp_make_packet_signature(gensec_ntlmssp_state, sig_mem_ctx, + return ntlmssp_make_packet_signature(ntlmssp_state, + sig_mem_ctx, data, length, whole_pdu, pdu_length, NTLMSSP_SEND, sig, true); @@ -458,6 +453,26 @@ NTSTATUS ntlmssp_sign_init(struct gensec_ntlmssp_state *gensec_ntlmssp_state) return NT_STATUS_OK; } +NTSTATUS gensec_ntlmssp_sign_packet(struct gensec_security *gensec_security, + TALLOC_CTX *sig_mem_ctx, + const uint8_t *data, size_t length, + const uint8_t *whole_pdu, size_t pdu_length, + DATA_BLOB *sig) +{ + struct gensec_ntlmssp_context *gensec_ntlmssp = + talloc_get_type_abort(gensec_security->private_data, + struct gensec_ntlmssp_context); + NTSTATUS nt_status; + + nt_status = ntlmssp_sign_packet(gensec_ntlmssp->ntlmssp_state, + sig_mem_ctx, + data, length, + whole_pdu, pdu_length, + sig); + + return nt_status; +} + size_t gensec_ntlmssp_sig_size(struct gensec_security *gensec_security, size_t data_size) { return NTLMSSP_SIG_SIZE;