2011-03-02 16:00:23 +03:00
/*
Unix SMB / CIFS implementation .
SMB Transport encryption code .
Copyright ( C ) Jeremy Allison 2007.
This program is free software ; you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation ; either version 3 of the License , or
( at your option ) any later version .
This program is distributed in the hope that it will be useful ,
but WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
GNU General Public License for more details .
You should have received a copy of the GNU General Public License
along with this program . If not , see < http : //www.gnu.org/licenses/>.
*/
# ifndef _HEADER_SMB_CRYPT_H
# define _HEADER_SMB_CRYPT_H
struct smb_trans_enc_state {
2011-10-19 17:35:23 +04:00
uint16_t enc_ctx_num ;
2011-03-02 16:00:23 +03:00
bool enc_on ;
2012-01-14 05:00:53 +04:00
struct gensec_security * gensec_security ;
2011-03-02 16:00:23 +03:00
} ;
2011-10-19 15:47:39 +04:00
/* The following definitions come from smb_seal.c */
2011-10-19 17:33:16 +04:00
2011-10-19 17:35:23 +04:00
NTSTATUS get_enc_ctx_num ( const uint8_t * buf , uint16_t * p_enc_ctx_num ) ;
2011-10-19 17:33:16 +04:00
bool common_encryption_on ( struct smb_trans_enc_state * es ) ;
NTSTATUS common_encrypt_buffer ( struct smb_trans_enc_state * es , char * buffer , char * * buf_out ) ;
NTSTATUS common_decrypt_buffer ( struct smb_trans_enc_state * es , char * buf ) ;
void common_free_enc_buffer ( struct smb_trans_enc_state * es , char * buf ) ;
2011-03-02 16:00:23 +03:00
# endif /* _HEADER_SMB_CRYPT_H */