mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
2.0 KiB
81 lines
2.0 KiB
/*++
|
|
|
|
Copyright (C) Microsoft Corporation, 1999
|
|
|
|
Module Name:
|
|
|
|
mschapp - MS-CHAP Password Change API
|
|
|
|
Abstract:
|
|
|
|
These APIs correspond to the MS-CHAP RFC -2433 sections 9 and 10. In order
|
|
to develop an MS-CHAP RAS server that works with an NT domain, these APIs
|
|
are required.
|
|
|
|
Only wide (Unicode) versions of these apis will be available. These are the
|
|
2 callable APIs:
|
|
|
|
* MSChapSrvChangePassword
|
|
* MsChapSrvChangePassword2
|
|
|
|
--*/
|
|
|
|
#ifndef _MSCHAPP_H_
|
|
#define _MSCHAPP_H_
|
|
|
|
#ifndef _NTCRYPT_
|
|
#define CYPHER_BLOCK_LENGTH 8
|
|
|
|
typedef struct _CYPHER_BLOCK {
|
|
CHAR data[CYPHER_BLOCK_LENGTH];
|
|
}CYPHER_BLOCK;
|
|
|
|
typedef struct _LM_OWF_PASSWORD {
|
|
CYPHER_BLOCK data[2];
|
|
} LM_OWF_PASSWORD;
|
|
typedef LM_OWF_PASSWORD * PLM_OWF_PASSWORD;
|
|
typedef LM_OWF_PASSWORD NT_OWF_PASSWORD;
|
|
typedef NT_OWF_PASSWORD * PNT_OWF_PASSWORD;
|
|
|
|
typedef struct _SAMPR_ENCRYPTED_USER_PASSWORD {
|
|
UCHAR Buffer[ (256 * 2) + 4 ];
|
|
} SAMPR_ENCRYPTED_USER_PASSWORD, *PSAMPR_ENCRYPTED_USER_PASSWORD;
|
|
|
|
typedef struct _ENCRYPTED_LM_OWF_PASSWORD {
|
|
CYPHER_BLOCK data[2];
|
|
};
|
|
|
|
typedef ENCRYPTED_LM_OWF_PASSWORD ENCRYPTED_NT_OWF_PASSWORD;
|
|
#endif
|
|
|
|
|
|
//
|
|
// Change a password.
|
|
//
|
|
|
|
extern WINADVAPI DWORD WINAPI
|
|
MSChapSrvChangePassword(
|
|
IN LPWSTR ServerName,
|
|
IN LPWSTR UserName,
|
|
IN BOOLEAN LmOldPresent,
|
|
IN PLM_OWF_PASSWORD LmOldOwfPassword,
|
|
IN PLM_OWF_PASSWORD LmNewOwfPassword,
|
|
IN PNT_OWF_PASSWORD NtOldOwfPassword,
|
|
IN PNT_OWF_PASSWORD NtNewOwfPassword);
|
|
|
|
|
|
//
|
|
// Change a password using mutual encryption.
|
|
//
|
|
|
|
extern WINADVAPI DWORD WINAPI
|
|
MSChapSrvChangePassword2(
|
|
IN LPWSTR ServerName,
|
|
IN LPWSTR UserName,
|
|
IN PSAMPR_ENCRYPTED_USER_PASSWORD NewPasswordEncryptedWithOldNt,
|
|
IN PENCRYPTED_NT_OWF_PASSWORD OldNtOwfPasswordEncryptedWithNewNt,
|
|
IN BOOLEAN LmPresent,
|
|
IN PSAMPR_ENCRYPTED_USER_PASSWORD NewPasswordEncryptedWithOldLm,
|
|
IN PENCRYPTED_LM_OWF_PASSWORD OldLmOwfPasswordEncryptedWithNewLmOrNt);
|
|
|
|
#endif // _MSCHAPP_H_
|