<Type Name="SocketType" FullName="System.Net.Sockets.SocketType" FullNameSP="System_Net_Sockets_SocketType" Maintainer="ecma">
  <TypeSignature Language="ILASM" Value=".class public sealed serializable SocketType extends System.Enum" />
  <TypeSignature Language="C#" Value="public enum SocketType" />
  <MemberOfLibrary>Networking</MemberOfLibrary>
  <AssemblyInfo>
    <AssemblyName>System</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ]</AssemblyPublicKey>
    <AssemblyVersion>1.0.x.x</AssemblyVersion>
    <AssemblyCulture>none</AssemblyCulture>
    <Attributes>
      <Attribute>
        <AttributeName>CLSCompliantAttribute(true)</AttributeName>
        <Excluded>0</Excluded>
      </Attribute>
    </Attributes>
  </AssemblyInfo>
  <Docs>
    <summary>
      <para> Specifies the type of socket an instance of the <see cref="T:System.Net.Sockets.Socket" /> class represents.
   </para>
    </summary>
    <remarks>
      <para>A <see cref="T:System.Net.Sockets.SocketType" /> member 
   is required
   when constructing instances of the <see cref="T:System.Net.Sockets.Socket" />
   class and specifies the functionality the instance supports. </para>
    </remarks>
  </Docs>
  <Base>
    <BaseTypeName>System.Enum</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName="value__">
      <MemberSignature Language="ILASM" Value=".field public rtspecialname specialname int32 value__" />
      <MemberSignature Language="C#" Value="value__;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs />
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Stream">
      <MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Net.Sockets.SocketType Stream = 1" />
      <MemberSignature Language="C#" Value="Stream = 1;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Net.Sockets.SocketType</ReturnType>
      </ReturnValue>
      <Parameters />
      <MemberValue>Stream</MemberValue>
      <Docs>
        <summary>
          <para> Supports reliable, two-way, connection-based byte
      streams with an out-of-band (OOB) data transmission mechanism. Uses the Transmission
      Control Protocol (<see cref="F:System.Net.Sockets.ProtocolType.Tcp" qualify="true" />) protocol and the <see cref="F:System.Net.Sockets.AddressFamily.InterNetwork" qualify="true" /> address family.</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Dgram">
      <MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Net.Sockets.SocketType Dgram = 2" />
      <MemberSignature Language="C#" Value="Dgram = 2;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Net.Sockets.SocketType</ReturnType>
      </ReturnValue>
      <Parameters />
      <MemberValue>Dgram</MemberValue>
      <Docs>
        <summary>
          <para> Supports datagrams, which are connectionless, unreliable
      messages of a fixed (typically small) maximum length. Uses the User Datagram
      Protocol (<see cref="F:System.Net.Sockets.ProtocolType.Udp" /> ) protocol
      and the <see cref="F:System.Net.Sockets.AddressFamily.InterNetwork" /> address family.</para>
          <para>
To enable both sending and reception of broadcast datagram packets on Linux, you need to use <see cref="M:System.Net.Sockets.Socket.SetSocketOption" />(<see cref="F:System.Net.Sockets.SocketOptionLevel.Socket" />, <see cref="F:System.Net.Sockets.SocketOptionName.Broadcast" />, 1); and for reception also bind the socket to the wildcard IP address (<see cref="F:System.Net.IPAddress.Any" />).
</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Raw">
      <MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Net.Sockets.SocketType Raw = 3" />
      <MemberSignature Language="C#" Value="Raw = 3;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Net.Sockets.SocketType</ReturnType>
      </ReturnValue>
      <Parameters />
      <MemberValue>Raw</MemberValue>
      <Docs>
        <summary>
          <para> Supports access to the underlying
      transport protocol. Can communicate through protocols other than <see cref="F:System.Net.Sockets.ProtocolType.Tcp" /> and <see cref="F:System.Net.Sockets.ProtocolType.Udp" />,
      such as Internet Control Message Protocol (<see cref="F:System.Net.Sockets.ProtocolType.Icmp" />) and Internet Group Management
      Protocol (<see cref="F:System.Net.Sockets.ProtocolType.Igmp" />).</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Rdm">
      <MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Net.Sockets.SocketType Rdm = 4" />
      <MemberSignature Language="C#" Value="Rdm = 4;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Net.Sockets.SocketType</ReturnType>
      </ReturnValue>
      <Parameters />
      <MemberValue>Rdm</MemberValue>
      <Docs>
        <summary>
          <para>Supports message-oriented, reliably delivered messages, and preserves message 
      boundaries in data. </para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Seqpacket">
      <MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Net.Sockets.SocketType Seqpacket = 5" />
      <MemberSignature Language="C#" Value="Seqpacket = 5;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Net.Sockets.SocketType</ReturnType>
      </ReturnValue>
      <Parameters />
      <MemberValue>Seqpacket</MemberValue>
      <Docs>
        <summary>
          <para> Supports message-oriented, sequenced packets.</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
    <Member MemberName="Unknown">
      <MemberSignature Language="ILASM" Value=".field public static literal valuetype System.Net.Sockets.SocketType Unknown = -1" />
      <MemberSignature Language="C#" Value="Unknown = -1;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Net.Sockets.SocketType</ReturnType>
      </ReturnValue>
      <Parameters />
      <MemberValue>Unknown</MemberValue>
      <Docs>
        <summary>
          <para> Unknown socket type.</para>
        </summary>
      </Docs>
      <Excluded>0</Excluded>
    </Member>
  </Members>
  <TypeExcluded>0</TypeExcluded>
</Type>