public void Quic()
        {
            TestRuntime.AssertXcodeVersion(13, 0);
#if NET
            using (var m = new NWIPMetadata()) {
                Assert.That(m.EcnFlag, Is.EqualTo(NWIPEcnFlag.NonEct), "IPMetadataEcnFlag");
                Assert.That(m.ReceiveTime, Is.EqualTo(TimeSpan.Zero), "IPMetadataReceiveTime");
#else
            using (var m = NWProtocolMetadata.CreateIPMetadata()) {
                Assert.That(m.IPMetadataEcnFlag, Is.EqualTo(NWIPEcnFlag.NonEct), "IPMetadataEcnFlag");
                Assert.That(m.IPMetadataReceiveTime, Is.EqualTo(0), "IPMetadataReceiveTime");
#endif
                Assert.True(m.IsIP, "IsIP");
                Assert.False(m.IsTcp, "IsTcp");
                Assert.False(m.IsUdp, "IsUdp");
                Assert.False(m.IsQuic, "IsQuic");
                Assert.NotNull(m.ProtocolDefinition, "ProtocolDefinition");
#if !NET
                Assert.Throws <InvalidOperationException> (() => { var x = m.SecProtocolMetadata; }, "SecProtocolMetadata");
                Assert.Throws <InvalidOperationException> (() => { var x = m.TlsSecProtocolMetadata; }, "TlsSecProtocolMetadata");
#endif
                Assert.That(m.ServiceClass, Is.EqualTo(NWServiceClass.BestEffort), "ServiceClass");
#if !NET
                Assert.That(m.IPServiceClass, Is.EqualTo(NWServiceClass.BestEffort), "IPServiceClass");
#endif
            }
        }
    }
Exemplo n.º 2
0
 public void CreateSecret()
 {
     using (var npm = NWProtocolMetadata.CreateIPMetadata()) {
         // `npm` and `spm` have the same handle - same internal object satistfy both protocols
         Console.WriteLine($"{CFGetRetainCount (npm.Handle)}");
         using (var spm = npm.SecProtocolMetadata) {
             Console.WriteLine($"{CFGetRetainCount (npm.Handle)}");
             Console.WriteLine($"{CFGetRetainCount (spm.Handle)}");
             var secret = spm.CreateSecret("test", 16);                      // crash
         }
     }
 }
 public void Udp()
 {
     using (var m = NWProtocolMetadata.CreateUdpMetadata()) {
         Assert.That(m.IPMetadataEcnFlag, Is.EqualTo(NWIPEcnFlag.NonEct), "IPMetadataEcnFlag");
         Assert.That(m.IPMetadataReceiveTime, Is.EqualTo(0), "IPMetadataReceiveTime");
         Assert.False(m.IsIP, "IsIP");
         Assert.False(m.IsTcp, "IsTcp");
         Assert.True(m.IsUdp, "IsUdp");
         Assert.NotNull(m.ProtocolDefinition, "ProtocolDefinition");
         Assert.NotNull(m.SecProtocolMetadata, "SecProtocolMetadata");
         Assert.That(m.ServiceClass, Is.EqualTo(NWServiceClass.BestEffort), "ServiceClass");
     }
 }
Exemplo n.º 4
0
 public void Udp()
 {
     using (var m = NWProtocolMetadata.CreateUdpMetadata()) {
         Assert.Throws <InvalidOperationException> (() => { var x = m.IPMetadataEcnFlag; }, "IPMetadataEcnFlag");
         Assert.Throws <InvalidOperationException> (() => { var x = m.IPMetadataReceiveTime; }, "IPMetadataReceiveTime");
         Assert.False(m.IsIP, "IsIP");
         Assert.False(m.IsTcp, "IsTcp");
         Assert.True(m.IsUdp, "IsUdp");
         Assert.NotNull(m.ProtocolDefinition, "ProtocolDefinition");
         Assert.Throws <InvalidOperationException> (() => { var x = m.SecProtocolMetadata; }, "SecProtocolMetadata");
         Assert.Throws <InvalidOperationException> (() => { var x = m.TlsSecProtocolMetadata; }, "TlsSecProtocolMetadata");
         Assert.Throws <InvalidOperationException> (() => { var x = m.ServiceClass; }, "ServiceClass");
         Assert.Throws <InvalidOperationException> (() => { var x = m.IPServiceClass; }, "IPServiceClass");
     }
 }
Exemplo n.º 5
0
 public void IP()
 {
     using (var m = NWProtocolMetadata.CreateIPMetadata()) {
         Assert.That(m.IPMetadataEcnFlag, Is.EqualTo(NWIPEcnFlag.NonEct), "IPMetadataEcnFlag");
         Assert.That(m.IPMetadataReceiveTime, Is.EqualTo(0), "IPMetadataReceiveTime");
         Assert.True(m.IsIP, "IsIP");
         Assert.False(m.IsTcp, "IsTcp");
         Assert.False(m.IsUdp, "IsUdp");
         Assert.NotNull(m.ProtocolDefinition, "ProtocolDefinition");
         Assert.Throws <InvalidOperationException> (() => { var x = m.SecProtocolMetadata; }, "SecProtocolMetadata");
         Assert.Throws <InvalidOperationException> (() => { var x = m.TlsSecProtocolMetadata; }, "TlsSecProtocolMetadata");
         Assert.That(m.ServiceClass, Is.EqualTo(NWServiceClass.BestEffort), "ServiceClass");
         Assert.That(m.IPServiceClass, Is.EqualTo(NWServiceClass.BestEffort), "IPServiceClass");
     }
 }
Exemplo n.º 6
0
        public void IPDefaults()
        {
            using (var m = NWProtocolMetadata.CreateIPMetadata()) {
                var s = m.SecProtocolMetadata;
                // This is mostly, but not always, returning false
                // Assert.False (s.EarlyDataAccepted, "EarlyDataAccepted");
                Assert.That(s.NegotiatedCipherSuite, Is.EqualTo(SslCipherSuite.SSL_NULL_WITH_NULL_NULL), "NegotiatedCipherSuite");
                Assert.Null(s.NegotiatedProtocol, "NegotiatedProtocol");
                Assert.That(s.NegotiatedProtocolVersion, Is.EqualTo(SslProtocol.Unknown), "NegotiatedProtocolVersion");
                Assert.Null(s.PeerPublicKey, "PeerPublicKey");
#if false
                Assert.True(SecProtocolMetadata.ChallengeParametersAreEqual(s, s), "ChallengeParametersAreEqual");
                Assert.True(SecProtocolMetadata.PeersAreEqual(s, s), "PeersAreEqual");
#endif
            }
        }