diff options
author | Jeremy Allison <jra@samba.org> | 2003-07-16 22:57:56 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2003-07-16 22:57:56 +0000 |
commit | 6ab5e14494ed6b579658f4fe3410759582d909cd (patch) | |
tree | b430d08de24ebf22818f4f794c129b731eccfd95 /source3/include | |
parent | cdb3b5dec2b5a5ce47c2d371769976d896210041 (diff) | |
download | samba-6ab5e14494ed6b579658f4fe3410759582d909cd.tar.gz samba-6ab5e14494ed6b579658f4fe3410759582d909cd.tar.bz2 samba-6ab5e14494ed6b579658f4fe3410759582d909cd.zip |
Refactor signing code to remove most dependencies on 'struct cli'.
Ensure a server can't do a downgrade attack if client signing is mandatory.
Add a lp_server_signing() function and a 'server signing' parameter that
will act as the client one does.
Jeremy
(This used to be commit 203e4bf0bfb66fd9239e9a0656438a71280113cb)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/client.h | 12 | ||||
-rw-r--r-- | source3/include/smb.h | 14 |
2 files changed, 14 insertions, 12 deletions
diff --git a/source3/include/client.h b/source3/include/client.h index fad2c099b9..598e6c0bda 100644 --- a/source3/include/client.h +++ b/source3/include/client.h @@ -57,18 +57,6 @@ struct print_job_info time_t t; }; -typedef struct smb_sign_info { - void (*sign_outgoing_message)(struct cli_state *cli); - BOOL (*check_incoming_message)(struct cli_state *cli); - void (*free_signing_context)(struct cli_state *cli); - void *signing_context; - - BOOL negotiated_smb_signing; - BOOL allow_smb_signing; - BOOL doing_signing; - BOOL mandatory_signing; -} smb_sign_info; - struct cli_state { int port; int fd; diff --git a/source3/include/smb.h b/source3/include/smb.h index d2714e78bc..85ee5cdfc6 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -1630,4 +1630,18 @@ struct ip_service { unsigned port; }; +/* Used by the SMB signing functions. */ + +typedef struct smb_sign_info { + void (*sign_outgoing_message)(char *outbuf, struct smb_sign_info *si); + BOOL (*check_incoming_message)(char *inbuf, struct smb_sign_info *si); + void (*free_signing_context)(struct smb_sign_info *si); + void *signing_context; + + BOOL negotiated_smb_signing; + BOOL allow_smb_signing; + BOOL doing_signing; + BOOL mandatory_signing; +} smb_sign_info; + #endif /* _SMB_H */ |