www.pudn.com > IPFlood.rar > SetupIPDlg.cpp


// SetupIPDlg.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "IPFlood.h" 
#include "SetupIPDlg.h" 
#include "SetupDlg.h" 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
// CSetupIPDlg dialog 
 
 
CSetupIPDlg::CSetupIPDlg(CWnd* pParent /*=NULL*/) 
	: CDialog(CSetupIPDlg::IDD, pParent) 
{ 
	//{{AFX_DATA_INIT(CSetupIPDlg) 
	m_BChecksum = TRUE; 
	m_BRandomIP = FALSE; 
	m_BSpecialSrcIP = FALSE; 
	m_IPFragOffset = 0; 
	m_IPChecksum = 0; 
	m_IPLen = 48; 
	m_IPProtocol = 1; 
	m_IPTos = 0; 
	m_IPTTL = 128; 
	m_bRandomDestIP = TRUE; 
	m_IPincreaseDest = FALSE; 
	m_IPincreaseSrc = FALSE; 
	//}}AFX_DATA_INIT 
} 
 
 
void CSetupIPDlg::DoDataExchange(CDataExchange* pDX) 
{ 
	CDialog::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(CSetupIPDlg) 
	DDX_Control(pDX, IDC_SPECIALSRCIP, m_IPSpecialSrcIP); 
	DDX_Control(pDX, IDC_IPDESTIP, m_IPDestIP); 
	DDX_Check(pDX, IDC_BCHECKSUM, m_BChecksum); 
	DDX_Check(pDX, IDC_BRANDOMSRCIP, m_BRandomIP); 
	DDX_Check(pDX, IDC_BSPECIALSRCIP, m_BSpecialSrcIP); 
	DDX_Text(pDX, IDC_IPFRAGOFFSET, m_IPFragOffset); 
	DDX_Text(pDX, IDC_IPCHECKSUM, m_IPChecksum); 
	DDX_Text(pDX, IDC_IPLEN, m_IPLen); 
	DDV_MinMaxUInt(pDX, m_IPLen, 40, 65535); 
	DDX_Text(pDX, IDC_IPPROTOCOL, m_IPProtocol); 
	DDX_Text(pDX, IDC_IPTOS, m_IPTos); 
	DDX_Text(pDX, IDC_IPTTL, m_IPTTL); 
	DDV_MinMaxByte(pDX, m_IPTTL, 1, 255); 
	DDX_Check(pDX, IDC_BRANDOMDESTIP, m_bRandomDestIP); 
	DDX_Check(pDX, IDC_INCREASEDESTIP, m_IPincreaseDest); 
	DDX_Check(pDX, IDC_INCREASESRCIP, m_IPincreaseSrc); 
	//}}AFX_DATA_MAP 
} 
 
 
BEGIN_MESSAGE_MAP(CSetupIPDlg, CDialog) 
	//{{AFX_MSG_MAP(CSetupIPDlg) 
	ON_BN_CLICKED(IDC_BCHECKSUM, OnBchecksum) 
	ON_BN_CLICKED(IDC_BRANDOMSRCIP, OnBrandomsrcip) 
	ON_BN_CLICKED(IDC_BSPECIALSRCIP, OnBspecialsrcip) 
	ON_BN_CLICKED(IDC_BRANDOMDESTIP, OnBrandomdestip) 
	ON_BN_CLICKED(IDC_INCREASESRCIP, OnIncreasesrcip) 
	ON_BN_CLICKED(IDC_INCREASEDESTIP, OnIncreasedestip) 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CSetupIPDlg message handlers 
 
BOOL CSetupIPDlg::OnInitDialog()  
{ 
	CDialog::OnInitDialog(); 
	 
	m_IPSpecialSrcIP.EnableWindow (false); 
	GetDlgItem(IDC_IPCHECKSUM)->EnableWindow (false); 
	GetDlgItem(IDC_IPDESTIP)->EnableWindow (false); 
	GetDlgItem(IDC_INCREASEDESTIP)->EnableWindow (false); 
	return TRUE;  // return TRUE unless you set the focus to a control 
	              // EXCEPTION: OCX Property Pages should return FALSE 
} 
 
void CSetupIPDlg::OnBchecksum()  
{ 
	m_BChecksum=!m_BChecksum; 
	if(!m_BChecksum) 
		GetDlgItem(IDC_IPCHECKSUM)->EnableWindow (true); 
	else 
		GetDlgItem(IDC_IPCHECKSUM)->EnableWindow (false); 
	UpdateData(true); 
} 
 
void CSetupIPDlg::OnBrandomsrcip()  
{ 
	m_BRandomIP=!m_BRandomIP; 
	if(m_BRandomIP) 
	{ 
		GetDlgItem(IDC_BSPECIALSRCIP)->EnableWindow (false); 
		m_IPSpecialSrcIP.EnableWindow (false); 
		GetDlgItem(IDC_INCREASESRCIP)->EnableWindow (false); 
	}else 
	{	GetDlgItem(IDC_INCREASESRCIP)->EnableWindow (true); 
		GetDlgItem(IDC_BSPECIALSRCIP)->EnableWindow (true); 
		if(m_BSpecialSrcIP) 
			m_IPSpecialSrcIP.EnableWindow (true); 
	} 
	UpdateData(true); 
} 
 
void CSetupIPDlg::OnBspecialsrcip()  
{ 
	m_BSpecialSrcIP=!m_BSpecialSrcIP; 
	if(m_BSpecialSrcIP) 
	{	GetDlgItem(IDC_BRANDOMSRCIP)->EnableWindow (false); 
		GetDlgItem(IDC_INCREASESRCIP)->EnableWindow (false); 
		m_IPSpecialSrcIP.EnableWindow (true); 
	} 
	else 
	{	GetDlgItem(IDC_BRANDOMSRCIP)->EnableWindow (true); 
		GetDlgItem(IDC_INCREASESRCIP)->EnableWindow (true); 
		m_IPSpecialSrcIP.EnableWindow (false); 
	} 
	UpdateData(true); 
} 
 
void CSetupIPDlg::OnCancel()  
{ 
	m_BChecksum = TRUE; 
	m_BRandomIP = FALSE; 
	m_BSpecialSrcIP = FALSE; 
	m_IPFragOffset = 0; 
	m_IPChecksum = 0; 
	m_IPLen = 48; 
	m_IPProtocol = 1; 
	m_IPTos = 0; 
	m_IPTTL = 128; 
	m_bRandomDestIP = TRUE; 
	m_IPincreaseDest = FALSE; 
	m_IPincreaseSrc = FALSE; 
	m_IPSpecialSrcIP.SetAddress(192,168,157,111); 
	m_IPDestIP.SetAddress(192,168,157,222); 
	m_IPSpecialSrcIP.EnableWindow (false); 
	GetDlgItem(IDC_IPCHECKSUM)->EnableWindow (false); 
	GetDlgItem(IDC_IPDESTIP)->EnableWindow (false); 
	GetDlgItem(IDC_BRANDOMDESTIP)->EnableWindow (true); 
	GetDlgItem(IDC_INCREASEDESTIP)->EnableWindow (false); 
	GetDlgItem(IDC_BRANDOMSRCIP)->EnableWindow (true); 
	GetDlgItem(IDC_INCREASESRCIP)->EnableWindow (true); 
	GetDlgItem(IDC_BSPECIALSRCIP)->EnableWindow (true);	 
	m_bRandomDestIP=true; 
	UpdateData(false); 
} 
 
void CSetupIPDlg::OnBrandomdestip()  
{ 
	m_bRandomDestIP=!m_bRandomDestIP; 
	if(m_bRandomDestIP) 
	{ 
		GetDlgItem(IDC_IPDESTIP)->EnableWindow (false); 
		GetDlgItem(IDC_INCREASEDESTIP)->EnableWindow (false); 
	} 
	else 
	{ 
		GetDlgItem(IDC_IPDESTIP)->EnableWindow (true); 
		GetDlgItem(IDC_INCREASEDESTIP)->EnableWindow (true); 
	} 
	UpdateData(true); 
} 
 
 
void CSetupIPDlg::OnIncreasesrcip()  
{ 
	m_IPincreaseSrc=!m_IPincreaseSrc; 
	if(m_IPincreaseSrc) 
	{ 
		GetDlgItem(IDC_BRANDOMSRCIP)->EnableWindow (false); 
		GetDlgItem(IDC_BSPECIALSRCIP)->EnableWindow (false); 
	} 
	else 
	{ 
		GetDlgItem(IDC_BRANDOMSRCIP)->EnableWindow (true); 
		GetDlgItem(IDC_BSPECIALSRCIP)->EnableWindow (true); 
	} 
	UpdateData(true);	 
} 
 
void CSetupIPDlg::OnIncreasedestip()  
{ 
	m_IPincreaseDest=!m_IPincreaseDest; 
	if(m_IPincreaseDest) 
	{ 
		GetDlgItem(IDC_BRANDOMDESTIP)->EnableWindow (false); 
		GetDlgItem(IDC_IPDESTIP)->EnableWindow (false); 
	}else 
	{ 
		GetDlgItem(IDC_BRANDOMDESTIP)->EnableWindow (true);	 
		GetDlgItem(IDC_IPDESTIP)->EnableWindow (true); 
	} 
	UpdateData(true); 
}