X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/8e669ac162fe3b1040297f1d021de10778dce9d9..HEAD:/src/src/auths/auth-spa.h diff --git a/src/src/auths/auth-spa.h b/src/src/auths/auth-spa.h index da67178ff..629f50af5 100644 --- a/src/src/auths/auth-spa.h +++ b/src/src/auths/auth-spa.h @@ -1,5 +1,3 @@ -/* $Cambridge: exim/src/src/auths/auth-spa.h,v 1.3 2005/02/17 11:58:27 ph10 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ @@ -11,6 +9,8 @@ * All the code used here was torn by Marc Prud'hommeaux out of the * Samba project (by Andrew Tridgell, Jeremy Allison, and others). */ +/* Copyright (c) The Exim Maintainers 2023 */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* December 2004: The spa_base64_to_bits() function has no length checking in it. I have added a check. PH */ @@ -32,59 +32,59 @@ typedef unsigned char uint8x; typedef struct { - uint16x len; - uint16x maxlen; - uint32x offset; + uint16x len; + uint16x maxlen; + uint32x offset; } SPAStrHeader; typedef struct { - char ident[8]; - uint32x msgType; + char ident[8]; + uint32x msgType; SPAStrHeader uDomain; - uint32x flags; - uint8x challengeData[8]; - uint8x reserved[8]; + uint32x flags; + uint8x challengeData[8]; + uint8x reserved[8]; SPAStrHeader emptyString; - uint8x buffer[1024]; - uint32x bufIndex; + uint8x buffer[1024]; + uint32x bufIndex; } SPAAuthChallenge; typedef struct { - char ident[8]; - uint32x msgType; - uint32x flags; + char ident[8]; + uint32x msgType; + uint32x flags; SPAStrHeader user; SPAStrHeader domain; - uint8x buffer[1024]; - uint32x bufIndex; + uint8x buffer[1024]; + uint32x bufIndex; } SPAAuthRequest; typedef struct { - char ident[8]; - uint32x msgType; + char ident[8]; + uint32x msgType; SPAStrHeader lmResponse; SPAStrHeader ntResponse; SPAStrHeader uDomain; SPAStrHeader uUser; SPAStrHeader uWks; SPAStrHeader sessionKey; - uint32x flags; - uint8x buffer[1024]; - uint32x bufIndex; + uint32x flags; + uint8x buffer[1024]; + uint32x bufIndex; } SPAAuthResponse; #define spa_request_length(ptr) (((ptr)->buffer - (uint8x*)(ptr)) + (ptr)->bufIndex) void spa_bits_to_base64 (unsigned char *, const unsigned char *, int); int spa_base64_to_bits(char *, int, const char *); -void spa_build_auth_response (SPAAuthChallenge *challenge, - SPAAuthResponse *response, char *user, char *password); -void spa_build_auth_request (SPAAuthRequest *request, char *user, - char *domain); +void spa_build_auth_response (SPAAuthChallenge * challenge, + SPAAuthResponse * response, uschar * user, uschar * password); +void spa_build_auth_request (SPAAuthRequest * request, uschar * user, + uschar * domain); extern void spa_smb_encrypt (unsigned char * passwd, unsigned char * c8, unsigned char * p24); extern void spa_smb_nt_encrypt (unsigned char * passwd, unsigned char * c8,