plugins/admin-auth.sp
author David Anderson <dvander@alliedmods.net>
Fri Jun 08 05:35:43 2007 +0000 (2007-06-08)
changeset 928 b72ccb102bb2
parent 908 cd411e8827c4
permissions -rw-r--r--
added antiflood to build script
dvander@460
     1
/**
dvander@902
     2
 * admin-auth.sp
dvander@902
     3
 * Authenticates admins.
dvander@460
     4
 * This file is part of SourceMod, Copyright (C) 2004-2007 AlliedModders LLC
dvander@460
     5
 *
dvander@460
     6
 * This program is free software; you can redistribute it and/or
dvander@460
     7
 * modify it under the terms of the GNU General Public License
dvander@460
     8
 * as published by the Free Software Foundation; either version 2
dvander@460
     9
 * of the License, or (at your option) any later version.
dvander@460
    10
 *
dvander@460
    11
 * This program is distributed in the hope that it will be useful,
dvander@460
    12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
dvander@460
    13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
dvander@460
    14
 * GNU General Public License for more details.
dvander@460
    15
 * 
dvander@460
    16
 * You should have received a copy of the GNU General Public License
dvander@460
    17
 * along with this program; if not, write to the Free Software
dvander@460
    18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
ds@908
    19
 *
ds@908
    20
 * Version: $Id$
dvander@460
    21
 */
dvander@460
    22
dvander@460
    23
dvander@460
    24
#include <sourcemod>
dvander@460
    25
dvander@460
    26
public Plugin:myinfo = 
dvander@460
    27
{
dvander@460
    28
	name = "Admin Auth",
dvander@460
    29
	author = "AlliedModders LLC",
dvander@460
    30
	description = "Authenticates Admins",
dvander@902
    31
	version = SOURCEMOD_VERSION,
dvander@460
    32
	url = "http://www.sourcemod.net/"
dvander@460
    33
};
dvander@460
    34
dvander@460
    35
public OnClientAuthorized(client, const String:auth[])
dvander@460
    36
{
dvander@460
    37
	if (StrEqual(auth, "BOT")
dvander@460
    38
		|| StrEqual(auth, "STEAM_ID_LAN"))
dvander@460
    39
	{
dvander@460
    40
		return;
dvander@460
    41
	}
dvander@460
    42
	
dvander@460
    43
	new AdminId:id
dvander@460
    44
	if ((id = FindAdminByIdentity("steam", auth)) == INVALID_ADMIN_ID)
dvander@460
    45
	{
dvander@460
    46
		return;
dvander@460
    47
	}
dvander@460
    48
	
dvander@460
    49
	decl String:buffer[256], String:account[64];
dvander@460
    50
	
dvander@460
    51
	FormatUserLogText(client, buffer, sizeof(buffer));
dvander@460
    52
	
dvander@460
    53
	if (GetAdminUsername(id, account, sizeof(account)))
dvander@460
    54
	{
dvander@460
    55
		LogMessage("%s authenticated to account \"%s\"", buffer, account);
dvander@460
    56
	} else {
dvander@460
    57
		LogMessage("%s authenticated to an anonymous account", buffer);
dvander@460
    58
	}
dvander@460
    59
	
dvander@460
    60
	SetUserAdmin(client, id);
dvander@460
    61
}