windows-nt/Source/XPSP1/NT/net/rras/ip/nathlp/inc/nathlpp.h

75 lines
1.5 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*++
Copyright (c) 1998, Microsoft Corporation
Module Name:
nathlpp.h
Abstract:
This module contains declarations common to the user-mode components
of home-networking.
Author:
Abolade Gbadegesin (aboladeg) 5-Mar-1998
Revision History:
--*/
#ifndef _NATHLP_NATHLPP_H_
#define _NATHLP_NATHLPP_H_
//
// Object synchronization macros
//
#define ACQUIRE_LOCK(x) EnterCriticalSection(&(x)->Lock)
#define RELEASE_LOCK(x) LeaveCriticalSection(&(x)->Lock)
#define REFERENCE_OBJECT(x,deleted) \
(deleted(x) \
? FALSE \
: (InterlockedIncrement( \
reinterpret_cast<LPLONG>(&(x)->ReferenceCount) \
), TRUE))
#define DEREFERENCE_OBJECT(x,cleanup) \
(InterlockedDecrement(reinterpret_cast<LPLONG>(&(x)->ReferenceCount)) \
? TRUE \
: (cleanup(x), FALSE))
//
// Memory management macros
//
#define NH_ALLOCATE(s) HeapAlloc(GetProcessHeap(), 0, (s))
#define NH_FREE(p) HeapFree(GetProcessHeap(), 0, (p))
//
// Protocol-related constants
//
#define DHCP_PORT_SERVER 0x4300
#define DHCP_PORT_CLIENT 0x4400
#define DNS_PORT_SERVER 0x3500
#define WINS_PORT_SERVER 0x8900
#define FTP_PORT_DATA 0x1400
#define FTP_PORT_CONTROL 0x1500
#define ALG_PORT_DATA 0x1600
#define ALG_PORT_CONTROL 0x1700
//
// DNS suffix string
//
#define DNS_HOMENET_SUFFIX L"mshome.net" // default string
#endif // _NATHLP_NATHLPP_H_