|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
PROTOCOL_INFO
The PROTOCOL_INFO structure contains information about a protocol.
typedef struct _PROTOCOL_INFO { DWORD dwServiceFlags; INT iAddressFamily; INT iMaxSockAddr; INT iMinSockAddr; INT iSocketType; INT iProtocol; DWORD dwMessageSize; LPTSTR lpProtocol; } PROTOCOL_INFO;
Members
dwServiceFlags
A set of bit flags that specify the services provided by the protocol. One or more of the following bit flags may be set:
Value Meaning XP_CONNECTIONLESS If this flag is set, the protocol providesconnectionless (datagram) service. If this flag is clear, the protocol provides connection-oriented data transfer. XP_GUARANTEED_DELIVERY If this flag is set, the protocol guarantees that all data sent will reach the intended destination. If this flag is clear, there is no such guarantee. XP_GUARANTEED_ORDER If this flag is set, the protocol guarantees that data will arrive in the order in which it was sent. Note that this characteristic does not guarantee delivery of the data, but guarantees only its order. If this flag is clear, the order of data sent is not guaranteed. XP_MESSAGE_ORIENTED If this flag is set, the protocol is message-oriented. A message-oriented protocol honors message boundaries. If this flag is clear, the protocol is stream-oriented, and the concept of message boundaries is irrelevant. XP_PSEUDO_STREAM If this flag is set, the protocol is a message-oriented protocol that ignores message boundaries for all receive operations. This optional capability is useful when you do not want the protocol to frame messages. An application that requires stream-oriented characteristics can open a socket with type SOCK_STREAM for transport protocols that support this functionality, regardless of the value of iSocketType. XP_GRACEFUL_CLOSE If this flag is set, the protocol supports two-phase close operations, also known as "graceful" close operations. If this flag is clear, the protocol supports only abortive close operations. XP_EXPEDITED_DATA If this flag is set, the protocol supports expedited data, also known as "urgent data." XP_CONNECT_DATA If this flag is set, the protocol supports connect data. XP_DISCONNECT_DATA If this flag is set, the protocol supports disconnect data. XP_SUPPORTS_BROADCAST If this flag is set, the protocol supports a broadcast mechanism. XP_SUPPORTS_MULTICAST If this flag is set, the protocol supports a multicast mechanism. XP_BANDWIDTH_ALLOCATION If this flag is set, the protocol supports a mechanism for allocating a guaranteed bandwidth to an application. XP_FRAGMENTATION If this flag isset, the protocol supports message fragmentation; physical network MTU is hidden from applications. XP_ENCRYPTS If this flag is set, the protocol supports data encryption.
iAddressFamily
Specifies the value to pass as the af parameter when you call the socket function to open a socket for the protocol. This address family value uniquely defines the structure of Protocol addresses, also known as SOCKADDRs, used by the protocol.
iMaxSockAddr
Specifies the maximum length of a socket address supported by the protocol.
iMinSockAddr
Specifies the minimum length of a socket address supported by the protocol.
iSocketType
Specifies the value to pass as the type parameter when you call the socket function to open a socket for the protocol.
Note that if XP_PSEUDO_STREAM is set in dwServiceFlags, the application can specify SOCK_STREAM as the type parameter to socket, regardless of the value of iSocketType.
iProtocol
Specifies the value to pass as the protocol parameter when you call the socket function to open a socket for the protocol.
dwMessageSize
Specifies the maximum message size supported by the protocol. This is the maximum size of a message that can be sent from or received by the host. For protocols that do not support message framing, the actual maximum size of a message that can be sent to a given address may be less than this value.
The following special message size values are defined:
Value Meaning 0 The protocol is stream-oriented; the concept of message size is not relevant. 0xFFFFFFFF The protocol is message-oriented, but there is no maximum message size.
lpProtocol
Points to a zero-terminated string that supplies a name for the protocol; for example, "SPX2."
See Also
EnumProtocols, socket
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
PROTOCOL_INFO
Структура PROTOCOL_INFO содержит информацию о протоколе.
typedef struct _PROTOCOL_INFO { DWORD dwServiceFlags; INT iAddressFamily; INT iMaxSockAddr; INT iMinSockAddr; INT iSocketType; INT iProtocol; DWORD dwMessageSize; LPTSTR lpProtocol; } PROTOCOL_INFO;
Участники
dwServiceFlags
Установка бита сигнализирует, что определяет услуги предусматривался протоколом. Одно или более из следующего кусают флаги может быть установлено:
Значение Величины XP_CONNECTIONLESS Если этот флаг установлен, протокол providesconnectionless услуга (дейтаграмма). Если этот флаг ясен, протокол обеспечивает передачу данных ориентированной связи. XP_GUARANTEED_DELIVERY Если этот флаг установлен, протокол гарантирует, что все посланные данные достигнет предполагаемого расположения. Если этот флаг - ясен, нет такой гарантии. XP_GUARANTEED_ORDER Если этот флаг установлен, протокол гарантирует, что данные прибудет в порядке в котором он был послан. Отметьте, что эта характеристика не гарантирует поставку данных но гарантируйте только порядок. Если этот флаг ясен, порядок данных не посылал гарантирован. XP_MESSAGE_ORIENTED Если этот флаг установлен, протокол сориентирован сообщение. Ориентированный протокол сообщения выполняет границы сообщения. Если этот флаг ясен, протокол потоковый, и понятие границ сообщения несоответствующее. XP_PSEUDO_STREAM Если этот флаг установлен, протокол является ориентированным протоколом сообщения, который игнорирует границы сообщения для всех операций приемника. Эта дополнительная возможность полезная когда Вы не хотите протокол в фреймовые сообщения. Приложение, которое требует потоковые характеристики может открыть розетку с типом SOCK_STREAM для протоколов транспорта, которая поддерживает это функциональное назначение, независимо от величины iSocketType. XP_GRACEFUL_CLOSE Если этот флаг установлен, протокол поддерживает двух фаза закрытые операции, также узнанные как закрытые операции "изящный". Если этот флаг ясен, протокол поддерживает только прерванные закрытые операции. XP_EXPEDITED_DATA Если этот флаг установлен, протокол поддерживает срочные данные, также узнанные как "неотложные данные." XP_CONNECT_DATA Если этот флаг установлен, опоры протокола соединяют данные. XP_DISCONNECT_DATA Если этот флаг установлен, опоры протокола разъединяют данные. XP_SUPPORTS_BROADCAST Если этот флаг установлен, протокол поддерживает широковещательный механизм. XP_SUPPORTS_MULTICAST Если этот флаг установлен, протокол поддерживает групповой механизм. XP_BANDWIDTH_ALLOCATION Если этот флаг установлен, протокол поддерживает механизм для распределения гарантировать ширины полосы частот в приложение. XP_FRAGMENTATION Если этот флаг isset, протокол поддерживает фрагментацию сообщения; физическая сеть MTU спрятана из приложений. XP_ENCRYPTS Если этот флаг установлен, протокол поддерживает шифрование данных.
iAddressFamily
Определяет величину, чтобы передавать как af параметр когда Вы вызываете функцию розетки, чтобы открывать розетку для протокола. Эта семейная величина адреса однозначно определяет структуру адресов Протокола, также узнанного как SOCKADDRs, использованный протоколом.
iMaxSockAddr
Определяет максимальную длину адреса розетки поддерживанной протоколом.
iMinSockAddr
Определяет минимальную длину адреса розетки поддерживанной протоколом.
iSocketType
Определяет величину, чтобы передавать как параметр типа когда Вы вызываете функцию розетки, чтобы открывать розетку для протокола.
Отметьтесь, что если XP_PSEUDO_STREAM установлен в dwServiceFlags, приложение может определить SOCK_STREAM как параметр типа в розетку, независимо от величины iSocketType.
iProtocol
Определяет величину, чтобы передавать как параметр протокола когда Вы вызываете функцию розетки, чтобы открывать розетку для протокола.
dwMessageSize
Определяет максимальный размер сообщения поддерживанный протоколом. Это - максимальный размер сообщения, которое может быть послано из или получено хозяином. Для протоколов, что не поддерживать конструкцию сообщения, фактический максимальный размер сообщения, которые могут быть посланы в данный адрес могут быть менее чем эта величина.
Следующие величины размера специального сообщения определены:
Значение Величины 0 Протокол потоковый; понятие размера сообщения не важное. 0xFFFFFFFF протокол сориентирован сообщение, но нет максимального размера сообщения.
lpProtocol
Точки на расторгнутую нулевую строку, что поставляет называть в честь протокола; например, "SPX2."
Смотри Также
EnumProtocols, РОЗЕТКА
|
|
|
|
| |