Export (0) Print
Expand All

SocketPermission.AcceptList Property

Gets a list of EndpointPermission instances that identifies the endpoints that can be accepted under this permission instance.

Namespace:  System.Net
Assembly:  System (in System.dll)

public IEnumerator AcceptList { get; }

Property Value

Type: System.Collections.IEnumerator
An instance that implements the IEnumerator interface that contains EndpointPermission instances.

The following example uses the AcceptList property to return a list of endpoints to which accept privileges are granted.

     // Creates a SocketPermission restricting access to and from all URIs.
     SocketPermission mySocketPermission1 = new SocketPermission(PermissionState.None);

     // The socket to which this permission will apply will allow connections from www.contoso.com.
     mySocketPermission1.AddPermission(NetworkAccess.Accept, TransportType.Tcp, "www.contoso.com", 11000);

     // Creates a SocketPermission which will allow the target Socket to connect with www.southridgevideo.com.
     SocketPermission mySocketPermission2 =
                                new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "www.southridgevideo.com", 11002);

     // Creates a SocketPermission from the union of two SocketPermissions.
     SocketPermission mySocketPermissionUnion = 
                                (SocketPermission)mySocketPermission1.Union(mySocketPermission2);

     // Checks to see if the union was successfully created by using the IsSubsetOf method. 
     if (mySocketPermission1.IsSubsetOf(mySocketPermissionUnion) && 
     	   mySocketPermission2.IsSubsetOf(mySocketPermissionUnion)){
          Console.WriteLine("This union contains permissions from both mySocketPermission1 and mySocketPermission2"); 

          // Prints the allowable accept URIs to the console.
          Console.WriteLine("This union accepts connections on :");

          IEnumerator myEnumerator = mySocketPermissionUnion.AcceptList;
	   while (myEnumerator.MoveNext()) {
               Console.WriteLine(((EndpointPermission)myEnumerator.Current).ToString());
	        }      

             // Prints the allowable connect URIs to the console.
          Console.WriteLine("This union permits connections to :");

          myEnumerator = mySocketPermissionUnion.ConnectList;
	   while (myEnumerator.MoveNext()) {
               Console.WriteLine(((EndpointPermission)myEnumerator.Current).ToString());
	        }      

           }
// Creates a SocketPermission restricting access to and from all URIs.
SocketPermission *mySocketPermission1 = new SocketPermission(PermissionState::None);

// The socket to which this permission will apply will allow connections from www.contoso.com.
mySocketPermission1->AddPermission(NetworkAccess::Accept, TransportType::Tcp, "www.contoso.com", 11000);

// Creates a SocketPermission which will allow the target Socket to connect with www.southridgevideo.com.
SocketPermission *mySocketPermission2 =
    new SocketPermission(NetworkAccess::Connect, TransportType::Tcp, "www.southridgevideo.com", 11002);

// Creates a SocketPermission from the union of two SocketPermissions.
SocketPermission *mySocketPermissionUnion = 
    __try_cast<SocketPermission *>(mySocketPermission1->Union(mySocketPermission2));

// Checks to see if the union was successfully created by using the IsSubsetOf method.
if (mySocketPermission1->IsSubsetOf(mySocketPermissionUnion) && 
    mySocketPermission2->IsSubsetOf(mySocketPermissionUnion))
{
    Console::WriteLine("This union contains permissions from both mySocketPermission1 and mySocketPermission2"); 

    // Prints the allowable accept URIs to the console.
    Console::WriteLine("This union accepts connections on :");

    IEnumerator *myEnumerator = mySocketPermissionUnion->AcceptList;
    while (myEnumerator->MoveNext()) {
        Console::WriteLine(__try_cast<EndpointPermission *>(myEnumerator->Current)->ToString());
    }      

    // Prints the allowable connect URIs to the console.
    Console::WriteLine("This union permits connections to :");

    myEnumerator = mySocketPermissionUnion->ConnectList;
    while (myEnumerator->MoveNext()) {
        Console::WriteLine(__try_cast<EndpointPermission *>(myEnumerator->Current)->ToString());
    }      

}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft