VRDPAuth.h revision 616637905fa2f00febb1acd553136d7e56316f7c
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * VBox Remote Desktop Protocol:
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * External Authentication Library Interface.
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * Copyright (C) 2006-2007 innotek GmbH
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * available from http://www.virtualbox.org. This file is free software;
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * you can redistribute it and/or modify it under the terms of the GNU
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * General Public License as published by the Free Software Foundation,
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * distribution. VirtualBox OSE is distributed in the hope that it will
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * be useful, but WITHOUT ANY WARRANTY of any kind.
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * If you received this file as part of a commercial VirtualBox
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * distribution, then only the terms of your commercial VirtualBox
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * license agreement apply instead of the previous paragraph.
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync/* The following 2 enums are 32 bits values.*/
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync/* UUID memory representation. Array of 16 bytes. */
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync/* The library entry point calling convention. */
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * Authentication library entry point. Decides whether to allow
ae5fc6ddd3d2ccdb941b1aacd23f6791fecc3354vboxsync * a client connection.
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * Parameters:
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * pUuid Pointer to the UUID of the virtual machine
d9b086bc8f68cd04745f397f8db45fca87c14365vboxsync * which the client connected to.
d9b086bc8f68cd04745f397f8db45fca87c14365vboxsync * guestJudgement Result of the guest authentication.
d9b086bc8f68cd04745f397f8db45fca87c14365vboxsync * szUser User name passed in by the client (UTF8).
d9b086bc8f68cd04745f397f8db45fca87c14365vboxsync * szPassword Password passed in by the client (UTF8).
d9b086bc8f68cd04745f397f8db45fca87c14365vboxsync * szDomain Domain passed in by the client (UTF8).
d9b086bc8f68cd04745f397f8db45fca87c14365vboxsync * Return code:
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * VRDPAuthAccessDenied Client access has been denied.
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * VRDPAuthAccessGranted Client has the right to use the
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * virtual machine.
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * VRDPAuthDelegateToGuest Guest operating system must
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * authenticate the client and the
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * library must be called again with
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * the result of the guest
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync * authentication.
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsynctypedef VRDPAuthResult VRDPAUTHCALL VRDPAUTHENTRY(PVRDPAUTHUUID pUuid,
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync const char *szUser,
b27ea9ec24c539f55433c8c33d0219f14fb354d5vboxsync const char *szDomain);
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * Authentication library entry point version 2. Decides whether to allow
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * a client connection.
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * Parameters:
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * pUuid Pointer to the UUID of the virtual machine
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * which the client connected to.
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * guestJudgement Result of the guest authentication.
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * szUser User name passed in by the client (UTF8).
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * szPassword Password passed in by the client (UTF8).
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * szDomain Domain passed in by the client (UTF8).
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * fLogon Boolean flag. Indicates whether the entry point is called
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * for a client logon or the client disconnect.
a5d4a2a6365cbfa15e179bc79d291133c4a0ff1evboxsync * clientId Server side unique identifier of the client.
957e0fcedf2079feefdb1aa2d0da65e39cd8479cvboxsync * Return code:
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * VRDPAuthAccessDenied Client access has been denied.
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * VRDPAuthAccessGranted Client has the right to use the
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * virtual machine.
81b61357ada6821d8257b3d147a4d4309fcb2fa7vboxsync * VRDPAuthDelegateToGuest Guest operating system must
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * authenticate the client and the
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * library must be called again with
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * the result of the guest
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * authentication.
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * Note: When 'fLogon' is false, only pUuid and clientId are valid and the return
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync * code is ignored.
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsynctypedef VRDPAuthResult VRDPAUTHCALL VRDPAUTHENTRY2(PVRDPAUTHUUID pUuid,
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync const char *szUser,
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync const char *szDomain,
10028648143893a0291db53b6a5f7d061f8b0fa8vboxsync#endif /* ___VBox_vrdpauth_h */