Source code of Windows XP (NT5)
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.
|
|
/*++
Copyright (c) Microsoft Corporation. All rights reserved.
Module Name:
sbp2api.h
Abstract:
Definitions for the 1394 Sbp2 transport/protocol driver api
Author:
George Chrysanthakopoulos (georgioc) 2/12/99
Environment:
Kernel mode only
Revision History:
--*/
#ifndef _NTDDSBP2_H_
#define _NTDDSBP2_H_
#if (_MSC_VER >= 1020)
#pragma once
#endif
#ifdef __cplusplus
extern "C" { #endif
//
// Various definitions
//
#define IOCTL_SBP2_REQUEST CTL_CODE( \
FILE_DEVICE_UNKNOWN, \ 0x200, \ METHOD_IN_DIRECT, \ FILE_ANY_ACCESS \ )
//
// IEEE 1394 Sbp2 Request packet. It is how other
// device drivers communicate with the 1sbp2 trasnport.
//
typedef struct _SBP2_REQUEST {
//
// Holds the zero based Function number that corresponds to the request
// that device drivers are asking the sbp2 port driver to carry out.
//
ULONG RequestNumber;
//
// Holds Flags that may be unique to this particular operation
//
ULONG Flags;
//
// Holds the structures used in performing the various 1394 APIs
//
union {
//
// Fields necessary in order for the 1394 stack to carry out an
// ParseTextLeaf request.
//
struct { ULONG fulFlags; ULONG Key; // quadlet direct value to search for
ULONG ulLength; PVOID Buffer; // mdl to store the retrieved text leaf
} RetrieveTextLeaf;
struct { ULONG fulFlags; ULONG Parameter; ULONG Value; } AccessTransportSettings;
struct { ULONG fulFlags; } SetPassword; } u;
} SBP2_REQUEST, *PSBP2_REQUEST;
#define SBP2REQ_FLAG_RETRIEVE_VALUE 0x1
#define SBP2REQ_FLAG_MODIFY_VALUE 0x2
//
// sbp2 requests
//
#define SBP2_REQUEST_RETRIEVE_TEXT_LEAFS 1
#define SBP2_REQUEST_ACCESS_TRANSPORT_SETTINGS 2
#define SBP2_REQUEST_SET_PASSWORD 3
//
// values required for the SBP2_REQUEST_RETRIEVE_TEXT_LEAFS call
//
#define SBP2REQ_RETRIEVE_TEXT_LEAF_DIRECT 0x00000001
#define SBP2REQ_RETRIEVE_TEXT_LEAF_INDIRECT 0x00000002
#define SBP2REQ_RETRIEVE_TEXT_LEAF_FROM_UNIT_DIR 0x00000004
#define SBP2REQ_RETRIEVE_TEXT_LEAF_FROM_LU_DIR 0x00000008
//
// values required for the parameter in SBP2_REQUEST_ACCESS_TRANSPORT_SETTINGS call
//
#define SBP2REQ_ACCESS_SETTINGS_QUEUE_SIZE 0x00000001
//
// values required for SBP2_REQUEST_SET_PASSWORD
//
#define SBP2REQ_SET_PASSWORD_CLEAR 0x00000001
#define SBP2REQ_SET_PASSWORD_EXCLUSIVE 0x00000002
#ifdef __cplusplus
} #endif
#endif // _NTDDSBP2_H_
|