Leaked source code of windows server 2003
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.
|
|
#ifndef _NMSCHL_
#define _NMSCHL_
#ifdef __cplusplus
extern "C" { #endif
/*++
Copyright (c) 1989 Microsoft Corporation
Module Name:
Nmschl.h
Abstract: This is the header file for interfacing with the Name Challenge component of WINS
Functions:
Portability:
This header is portable.
Author:
Pradeep Bahl (PradeepB) Feb-1993
Revision History:
Modification Date Person Description of Modification ------------------ ------- ---------------------------
--*/
/*
includes */ #include "wins.h"
#include "comm.h"
#include "nmsdb.h"
/*
defines */
#define NMSCHL_INIT_BUFF_HEAP_SIZE 1000 //1000 bytes
/*
macros */
//
// The maximum number of challenges that can be initiated at any one time
// 500 is a very genrous number. We might want to make it smaller.
//
// used by QueRemoveChlReqWrkItm function in queue.c
//
#define NMSCHL_MAX_CHL_REQ_AT_ONE_TIME 500
/*
externs */
extern HANDLE NmsChlHeapHdl; //Heap for name challenge work items
extern HANDLE NmsChlReqQueEvtHdl; extern HANDLE NmsChlRspQueEvtHdl; extern CRITICAL_SECTION NmsChlReqCrtSec; extern CRITICAL_SECTION NmsChlRspCrtSec;
#ifdef WINSDBG
extern DWORD NmsChlNoOfReqNbt; extern DWORD NmsChlNoOfReqRpl; extern DWORD NmsChlNoNoRsp; extern DWORD NmsChlNoInvRsp; extern DWORD NmsChlNoRspDropped; extern DWORD NmsChlNoReqDequeued; extern DWORD NmsChlNoRspDequeued; extern DWORD NmsChlNoReqAtHdOfList; #endif
/*
typedef definitions */ //
// NMSCHL_CMD_TYP_E -- Enumerator for indicating to the challenge manager
// what action it needs to take.
//
typedef enum _NMSCHL_CMD_TYP_E { NMSCHL_E_CHL = 0, //challenge the node. If the
//challenge fails, send a negative
//name reg. response to the registrant,
//else send a positive response
NMSCHL_E_CHL_N_REL, NMSCHL_E_CHL_N_REL_N_INF, NMSCHL_E_REL, //ask the node to release the
//name and then update db. Used by
//the RPL PULL thread
NMSCHL_E_REL_N_INF, //ask the node to release the name. Tell //remote WINS to update the version number
NMSCHL_E_REL_ONLY //ask node to release name, no update db
} NMSCHL_CMD_TYP_E, *PNMSCHL_CMD_TYP_E;
/*
* function declarations */ STATUS NmsChlInit( VOID );
extern STATUS NmsChlHdlNamReg( NMSCHL_CMD_TYP_E CmdTyp_e, WINS_CLIENT_E Client_e, PCOMM_HDL_T pDlgHdl, MSG_T pMsg, MSG_LEN_T MsgLen, DWORD QuesNamSecLen, PNMSDB_ROW_INFO_T pNodeToReg, PNMSDB_STAT_INFO_T pNodeInCnf, // PCOMM_ADD_T pAddOfNodeInCnf,
PCOMM_ADD_T pAddOfRemWins );
#ifdef __cplusplus
} #endif
#endif
|