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 _FSANTFY_
#define _FSANTFY_
// fsantfy.h
//
// This header file has the definitions needed for recall notification
//
//
// The name of the mailslot, created by the client, that notification messages are sent to
//
#define WSB_MAILSLOT_NAME L"HSM_MAILSLOT"
//
// The following messages will be sent between the FSA and the recall notification client
//
//
// Request to identify yourself
//
typedef struct wsb_identify_req { WCHAR fsaName[MAX_COMPUTERNAME_LENGTH + 1]; // Name of machine that FSA is on
ULONG holdOff; // Wait period before attempting ID response (milliseconds)
} WSB_IDENTIFY_REQ, *PWSB_IDENTIFY_REQ;
//
// Recall notification message
//
typedef struct wsb_notify_recall { WCHAR fsaName[MAX_COMPUTERNAME_LENGTH + 1]; // Name of server the FSA is on
LONGLONG fileSize; // Size of file being recalled
HSM_JOB_STATE state; // Job state
GUID identifier; // ID of this recall
//
// TBD - need more information here (or make them get it via recall object) ??
//
} WSB_NOTIFY_RECALL, *PWSB_NOTIFY_RECALL;
typedef union wsb_msg { WSB_IDENTIFY_REQ idrq; WSB_NOTIFY_RECALL ntfy; } WSB_MSG, *PWSB_MSG;
typedef struct wsb_mailslot_msg { ULONG msgType; ULONG msgCount; WSB_MSG msg; } WSB_MAILSLOT_MSG, *PWSB_MAILSLOT_MSG;
//
// msgType values
//
#define WSB_MSG_IDENTIFY 1
#define WSB_MSG_NOTIFY 2
//
// Holdoff increment (milliseconds)
//
#define WSB_HOLDOFF_INCREMENT 300
//
// The following message is sent by the notification client via a named pipe
// in response to a identification request.
//
typedef struct wsb_identify_rep { WCHAR clientName[MAX_COMPUTERNAME_LENGTH + 1]; // Name of server that notification client is on
} WSB_IDENTIFY_REP, *PWSB_IDENTIFY_REP;
typedef union wsb_pmsg { WSB_IDENTIFY_REP idrp; } WSB_PMSG, *PWSB_PMSG;
typedef struct wsb_pipe_msg { ULONG msgType; WSB_PMSG msg; } WSB_PIPE_MSG, *PWSB_PIPE_MSG;
//
// msgType values
//
#define WSB_PMSG_IDENTIFY 1
//
// FSA pipe name used for identification response
//
#define WSB_PIPE_NAME L"HSM_PIPE"
//
// Pipe defines
//
#define WSB_MAX_PIPES 32 // Bug 558180: limit the number of concurrent instances such that
// malicious clients cannot drain the server resources
#define WSB_PIPE_BUFF_SIZE sizeof(WSB_PIPE_MSG)
#define WSB_PIPE_TIME_OUT 5000
#endif // _FSANTFY_
|