⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pgpnetattack.h

📁 PGP8.0源码 请认真阅读您的文件包然后写出其具体功能
💻 H
字号:
/*____________________________________________________________________________
	Copyright (C) 2002 PGP Corporation
	All rights reserved.
 
	$Id: pgpNetAttack.h,v 1.14 2002/08/06 20:10:25 dallen Exp $
____________________________________________________________________________*/
#ifndef Included_pgpNetAttack_h	/* [ */
#define Included_pgpNetAttack_h

typedef enum _PGPnetAttackType
{
	kPGPnetAttack_None				= 0,
	kPGPnetAttack_PingOfDeath,
	kPGPnetAttack_SynFlood,
	kPGPnetAttack_PortScan,
	kPGPnetAttack_IPSpoof,
	kPGPnetAttack_Land,
	kPGPnetAttack_Teardrop,
	kPGPnetAttack_Bonk,
	kPGPnetAttack_Nestea,
	kPGPnetAttack_Fraggle,
	kPGPnetAttack_Smurf,
	kPGPnetAttack_BackOrifice,
	kPGPnetAttack_PingFlood,
	kPGPnetAttack_UDPFlood,
	kPGPnetAttack_Jolt2,
	kPGPnetAttack_Snork,
	kPGPnetAttack_WinNuke,
	
	kPGPnetAttack_FirstFirewallRule	= 1000,
	
	PGP_ENUM_FORCE( _PGPnetAttackType )
} PGPnetAttackType;

typedef struct PGPnetAttackContext	PGPnetAttackContext;
typedef PGPnetAttackContext *		PGPnetAttackContextRef;

#define kInvalidPGPnetAttackContextRef		((PGPnetAttackContextRef) NULL)
#define PGPnetAttackContextRefIsValid(ref)	((ref) != kInvalidPGPnetAttackContextRef)


PGP_BEGIN_C_DECLARATIONS

/*

PGPNewNetAttackContext

Creates a new PGPnet attack context. This context should be created when the 
driver loads, and kept around until the driver unloads.

	attack - Pointer to the new context ref.

*/

PGPError PGPNewNetAttackContext(PGPnetAttackContextRef *attack);

/*

PGPFreeNetAttackContext

Frees the PGPnet attack context. Do this before the driver unloads.

	attack - Context ref to be freed.

*/

PGPError PGPFreeNetAttackContext(PGPnetAttackContextRef attack);

/*

PGPnetAddBlockedAttacker

Adds the IP address to the internal list of blocked addresses

	attack		- Context ref
	ipAddress	- Network-ordered IP address in 32-bit form

*/

PGPError PGPnetAddBlockedAttacker(PGPnetAttackContextRef attack, 
			PGPUInt32 nboIpAddress);

/*

PGPnetRemoveBlockedAttacker

Removes the IP address from the internal list of blocked addresses

	attack		- Context ref
	ipAddress	- Network-ordered IP address in 32-bit form

*/

PGPError PGPnetRemoveBlockedAttacker(PGPnetAttackContextRef attack, 
			PGPUInt32 ipAddress);

/*

PGPnetRemoveAllAttackers

Removes all blocked attackers from the interal list

	attack		- Context ref

*/

PGPError PGPnetRemoveAllAttackers(PGPnetAttackContextRef attack);

/*

PGPnetIsAddressBlocked

Checks the internal block list to see if the given IP address is blocked.
Returns TRUE if address is in the blocked list, FALSE otherwise.

	attack		- Context ref
	ipAddress	- Network-ordered IP address in 32-bit form

*/

PGPBoolean PGPnetIsAddressBlocked(PGPnetAttackContextRef attack, 
			PGPUInt32 ipAddress);

/*

PGPSetAttackContextUserValue

Sets the user value on the attack context.

	attack		- Context ref
	userValue	- User-defined data to be carried around with the context

*/

PGPError PGPSetAttackContextUserValue(PGPnetAttackContextRef attack, 
			PGPUserValue userValue);

PGP_END_C_DECLARATIONS

#endif /* ] Included_pgpNetAttack_h */

/*__Editor_settings____

	Local Variables:
	tab-width: 4
	End:
	vi: ts=4 sw=4
	vim: si
_____________________*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -