mirror of https://github.com/tongzx/nt5src
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.
116 lines
2.1 KiB
116 lines
2.1 KiB
/*++
|
|
|
|
Copyright (c) 1995 Microsoft Corporation
|
|
|
|
Module Name:
|
|
|
|
globals.c
|
|
|
|
Abstract:
|
|
|
|
globals
|
|
|
|
Author:
|
|
|
|
Stefan Solomon 07/06/1995
|
|
|
|
Revision History:
|
|
|
|
|
|
--*/
|
|
|
|
#include "precomp.h"
|
|
#pragma hdrstop
|
|
|
|
|
|
// *** registry parameters
|
|
|
|
ULONG SendGenReqOnWkstaDialLinks = 1;
|
|
ULONG CheckUpdateTime = 10;
|
|
|
|
|
|
// *** broadcast and null values for net & node ***
|
|
|
|
UCHAR bcastnet[4] = { 0xff, 0xff, 0xff, 0xff };
|
|
UCHAR bcastnode[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
|
|
UCHAR nullnet[4] = { 0, 0, 0, 0 };
|
|
|
|
// *** Rip operational state ***
|
|
|
|
ULONG RipOperState = OPER_STATE_DOWN;
|
|
|
|
|
|
//
|
|
// *** Database Lock - protects: ***
|
|
//
|
|
// Interface Database, i.e:
|
|
//
|
|
// List of interface CBs ordered by interface index
|
|
// Hash table of interface CBs hashed by interface index
|
|
// Hash table of interface CBs hashed by adapter index
|
|
// Discarded interfaces list
|
|
//
|
|
|
|
CRITICAL_SECTION DbaseCritSec;
|
|
|
|
// List of interface CBs ordered by interface index
|
|
|
|
LIST_ENTRY IndexIfList;
|
|
|
|
// Hash table of interface CBs hashed by interface index
|
|
|
|
LIST_ENTRY IfIndexHt[IF_INDEX_HASH_TABLE_SIZE];
|
|
|
|
// Hash table of interface CBs hashed by adapter index
|
|
|
|
LIST_ENTRY AdapterIndexHt[ADAPTER_INDEX_HASH_TABLE_SIZE];
|
|
|
|
// List of discarded interface CBs waiting for all references to terminate
|
|
// before being freed
|
|
|
|
LIST_ENTRY DiscardedIfList;
|
|
|
|
|
|
|
|
|
|
// *** Queues Lock - protects: ***
|
|
//
|
|
// Repost receive packets queue
|
|
// Work items queue
|
|
// Timer queue
|
|
//
|
|
// Receiver ref count
|
|
// Queue of event messages for the router manager
|
|
|
|
CRITICAL_SECTION QueuesCritSec;
|
|
|
|
// workers queue
|
|
|
|
// LIST_ENTRY WorkersQueue;
|
|
|
|
// timer queue
|
|
|
|
LIST_ENTRY TimerQueue;
|
|
|
|
// queue of rcv packets used by the worker and waiting to be reposted (or freed)
|
|
// by the rcv thread
|
|
|
|
LIST_ENTRY RepostRcvPacketsQueue;
|
|
|
|
// queue of event messages
|
|
|
|
LIST_ENTRY RipMessageQueue;
|
|
|
|
//*** Worker Thread Wait Objects Table ***
|
|
|
|
HANDLE WorkerThreadObjects[MAX_WORKER_THREAD_OBJECTS];
|
|
|
|
//*** Timer Timeout ***
|
|
|
|
ULONG TimerTimeout = INFINITE;
|
|
|
|
// IO Handle
|
|
HANDLE RipSocketHandle;
|
|
|
|
// Io Completion Port
|
|
HANDLE IoCompletionPortHandle;
|