estructura de CSADDR_INFO (ws2def.h)
La estructura CSADDR_INFO contiene información de direcciones de Windows Sockets para un socket, un servicio de red o un proveedor de espacios de nombres.
Sintaxis
typedef struct _CSADDR_INFO {
SOCKET_ADDRESS LocalAddr;
SOCKET_ADDRESS RemoteAddr;
INT iSocketType;
INT iProtocol;
} CSADDR_INFO, *PCSADDR_INFO, *LPCSADDR_INFO;
Miembros
LocalAddr
Tipo: SOCKET_ADDRESS
Dirección local de Windows Sockets.
En una aplicación cliente, pase esta dirección a la función de enlace para obtener acceso a un servicio de red.
En un servicio de red, pase esta dirección a la función de enlace para que el servicio esté enlazado a la dirección local adecuada.
RemoteAddr
Tipo: SOCKET_ADDRESS
Dirección remota de Windows Sockets.
Hay varios usos para esta dirección remota:
- Puede usar esta dirección remota para conectarse al servicio a través de la función connect . Esto es útil si una aplicación realiza operaciones derecepción de envío/ que implican protocolos orientados a la conexión.
- Puede usar esta dirección remota con la función sendto cuando se comunica a través de un protocolo sin conexión (datagrama). Si usa un protocolo sin conexión, como UDP, sendto suele ser la forma en que pasa datos al sistema remoto.
iSocketType
Tipo: INT
Tipo de Windows Socket. Los valores posibles para el tipo de socket se definen en el archivo de encabezado Winsock2.h .
En la tabla siguiente se enumeran los valores posibles admitidos para Windows Sockets 2:
Value | Significado |
---|---|
|
Un socket de flujo. Se trata de un protocolo que envía datos como un flujo de bytes, sin límites de mensajes. Este tipo de socket proporciona secuencias de bytes secuenciadas, confiables y bidireccionales basadas en conexiones con un mecanismo de transmisión de datos OOB. Este tipo de socket usa el Protocolo de control de transmisión (TCP) para la familia de direcciones de Internet (AF_INET o AF_INET6). |
|
Un socket de datagrama. Este tipo de socket admite datagramas, que son a menos que los búferes no confiables de una longitud máxima fija (normalmente pequeña). Este tipo de socket usa el Protocolo de datagramas de usuario (UDP) para la familia de direcciones de Internet (AF_INET o AF_INET6).
Los servicios usan la función recvfrom para obtener datagramas. Las funciones de escucha y aceptación no funcionan con datagramas. |
|
Un socket de datagrama de mensaje confiable. Este tipo de socket conserva los límites del mensaje en los datos. Un ejemplo de este tipo es la implementación del protocolo de multidifusión general pragmática (PGM) en Windows, a menudo denominada programación de multidifusión confiable. |
|
Un socket de flujo de paquetes secuenciado. Este tipo de socket proporciona un paquete pseudo-stream basado en datagramas. |
iProtocol
Tipo: INT
Protocolo utilizado. Las opciones posibles para el parámetro de protocolo son específicas de la familia de direcciones y el tipo de socket especificados. Los valores posibles se definen en los archivos de encabezado Winsock2.h y Wsrm.h .
En windows SDK publicado para Windows Vista y versiones posteriores, la organización de archivos de encabezado ha cambiado y este parámetro puede ser uno de los valores del tipo de enumeración IPPROTO definido en el archivo de encabezado Ws2def.h . Tenga en cuenta que el archivo de encabezado Ws2def.h se incluye automáticamente en Winsock2.h y nunca se debe usar directamente.
En la tabla siguiente se enumeran los valores comunes para el protocolo , aunque muchos otros valores son posibles.
Observaciones
La función GetAddressByName obtiene información de direcciones de Windows Sockets mediante estructuras CSADDR_INFO .
La función getockopt llamada con la opción de socket SO_BSP_STATE recupera una estructura de CSADDR_INFO para el socket especificado.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado | ws2def.h (incluya Nspapi.h) |